Camera-based commissioning and control of devices in a load control system

ABSTRACT

Lighting control systems may be commissioned for programming and/or control with the aid of an autonomous mobile device. Design software may be used to create a floor plan of how the lighting control system may be designed. The design software may generate floor plan identifiers for each lighting fixture, or group of lighting fixtures. During commissioning of the lighting control system, the autonomous mobile device may be used to help identify the lighting devices that have been installed in the physical space. The autonomous mobile device may receive a communication from each lighting control device that indicates a unique identifier of the lighting control device. The unique identifier may be communicated by visible light communication (VLC) or RF communication. The unique identifier may be associated with the floor plan identifier for communication of digital messages to lighting fixtures installed in the locations indicated in the floor plan identifier.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is continuation of U.S. Non-Provisional applicationSer. No. 16/530,768, filed Aug. 2, 2019, and claims the benefit of U.S.Provisional Application Ser. No. 62/713,913, filed Aug. 2, 2018, theentirety of which is incorporated by reference herein.

BACKGROUND

Lighting control systems may include lighting fixtures that includelighting loads, such as electrical lighting control devices or lightemitting diodes, for lighting a space. These lighting fixtures mayinclude a lighting control device, such as a light-emitting diode (LED)driver or electrical ballast, for controlling electrical power to thelighting load. The lighting control system may also include a systemcontroller, or hub, that is capable of sending instructions to thelighting control devices for controlling the electrical power providedto the lighting load. Typically, after the lighting control system isinstalled in a location, such as a residence, an office, or the like,the system controller may assign an address, such as a wireless addressor a wired link address, to each lighting control device that itcontrols. The address may be used for sending instructions to thelighting control device.

However, at the time of commissioning of the lighting control system toenable proper control of the devices in the system, it is difficult todetermine the lighting control devices at a specific location, such thatthe appropriate lighting control device can be programmed for lightingcontrol. For example, a floor plan of the lighting control system may bedesigned and programmed on a computing device using design software. Thefloor plan may indicate each lighting fixture and its correspondinglocation in a room or building. The design software may create adatabase of programming and/or control information for controlling thelighting control devices at identified locations in the floor plan. Theprogramming and/or control information may be uploaded to a systemcontroller for controlling the lighting fixtures. However, theinstaller, at the location of a particular lighting fixture, cannotreadily identify that particular lighting fixture or the lightingfixtures address to enable the programming and/or control information tobe used to communicate the proper commands to the lighting fixtures atthe defined locations on the floor plan. In some example systems, thelighting control devices may be installed in a location and a databasemay be created at the time of commissioning the system, but the identityand/or address of the devices at a given location may be unknown afterinstallation for enabling proper programming for lighting control.Examples of design software for lighting control systems are describedin greater detail in commonly-assigned U.S. Patent Application No.2017/0228110, published Aug. 10, 2017; U.S. Patent Application No.2017/0235470, published Aug. 17, 2017; and U.S Patent ApplicationPublication No. 2018/0203591, all entitled CONFIGURING A LOAD CONTROLSYSTEM, the entire disclosures of which are hereby incorporated byreference.

Determining the identity and/or address that is assigned to a specificlighting control device or fixture may be time-consuming and/orexpensive. For example, an installer may turn on individual lightingcontrol devices (e.g., while others remain off) to associate thephysical location of the lighting control devices (e.g., as determinedby floor plan stored in the database created by the design software)with a given identifier or address of the lighting control device. Inanother example, radio frequency (RF) signal strength detection may beused to approximate which specific lighting control device or lightingfixture is closest to an installer. The installer may compare thelighting control device with the strongest signal strength to a floorplan and assign the serial number for a device closest to theinstaller's current location with a known identity in the floor plan.

SUMMARY

Lighting control systems may be commissioned for programming and/orcontrol with the aid of a mobile device. As described herein, a lightingcontrol system may include lighting control devices for providing anamount of power to a lighting load. A control device may sendinstructions to the lighting control device (e.g., via wired or wirelesscommunication) for providing the amount of power to the lighting load.The lighting control device may be assigned a unique identifier (e.g.,serial number, an address, such as a wireless address or a wired linkaddress, etc.) for receiving instructions to provide the amount of powerto the lighting load.

Design software may be implemented to identify the location of thelighting control devices within the lighting control system. Thelocation may be, for example, a particular room in a building. Forexample, the design software may be used to create a floor plan of howthe lighting control system may be designed, such as the location oflighting control devices within a space, the devices with which thelighting control devices interface, etc. The design software may also beused to program how the lighting control devices are to be programmedfor performing lighting control. The floor plan may identify eachlighting fixture and its corresponding location in a room or building.The design software may generate floor plan identifiers for eachlighting fixture, or group of lighting fixtures. The design software maycreate a database that includes the programming and/or controlinformation for controlling the lighting control devices that correspondto each lighting control device, or group of lighting control devices,identified by a floor plan identifier in the database.

During commissioning of the lighting control system, a mobile device maybe used to help identify the lighting devices that have been installedin the physical space. For example, the mobile device may receive acommunication from each lighting control device that indicates a uniqueidentifier (e.g., serial number, address, etc.) of the lighting controldevice. The unique identifier may be communicated by visible lightcommunication (VLC) (e.g., LiFi) or radio-frequency (RF) communication(e.g., a Bluetooth signal or another RF communication signal).

The lighting control device in the lighting fixture may cause thelighting load to blink the unique identifier of the lighting controldevice such that it may be identified by images taken by animage-capturing circuit, such as a camera, of the mobile device. Forexample, a mobile device may be oriented in relation to one or more ofthe lighting loads. The mobile device may generate a video recording orlive video stream that captures a binary representation of the uniqueidentifier of the lighting control device. The unique identifier may beblinked at a high frequency, such as a low bandwidth LiFi, for example.

The lighting control device in the lighting fixture may broadcast theunique identifier of the lighting control device via RF. The uniqueidentifier may be broadcasted using a wireless technology and/orprotocol, such as, for example, WI-FI®, BLUETOOTH®, near fieldcommunication (NFC), ZIGBEE®, THREAD, CLEAR CONNECT™, or the like.Multiple unique identifiers may be transmitted at the same time, e.g. bymultiple lighting control devices. A mobile device may determine whichunique identifier corresponds to which lighting control device bymeasuring the signal strength of the transmissions. For example, themobile device may determine that the strongest received signalcorresponds to the closest transmitting lighting control device, and/orthat the weakest received signal corresponds to the farthesttransmitting lighting control device.

A mobile device with a camera may aid in commissioning a lightingcontrol system. A mobile device may be, for example, a cell phone, alaptop or tablet computer, or a wearable device (e.g., wearable computerglasses). The mobile device may be an autonomous mobile device, or maybe attached to an autonomous mobile device (e.g., a drone, Roomba®,and/or the like).

The lighting control system may include one or more lighting fixturesand one or more lighting control devices. A lighting fixture may be, forexample, a ceiling light. A lighting fixture (e.g., each lightingfixture) may be connected to a lighting control device. In an example,the camera of the mobile device may be pointed at one or more lightingfixtures, e.g. on the ceiling of a room. The mobile device may displayan image of the lighting fixture on its screen. The lighting fixture maytransmit a unique identifier, and the mobile device may receive theunique identifier from the lighting fixture. The unique identifier maybe, for example, the serial number of the lighting control device thatis controlling the fixture. For example, if a lighting control devicewith serial number “ABC123” is connected to a given fixture, thatfixture may transmit the unique identifier “ABC123”. A unique identifiermay be transmitted by, for example, VLC (e.g., LiFi) signals. If theunique identifier is transmitted by VLC signals, it may be at afrequency that is high enough so as to be invisible to the human eye,e.g. 60 Hz. In addition, the unique identifier may be transmitted by,for example, RF signals.

In an example, once the mobile device has received the unique identifiertransmitted by a lighting fixture, the mobile device may determine anidentity of a floor plan lighting fixture that corresponds to thephysical location of the transmitting lighting fixture. The mobiledevice may receive a unique identifier, and may select an alphanumericstring as the identity of the floor plan lighting fixture. For example,the mobile device may display the unique identifier “ABC123,” and mayidentify the fixture as “Downlight 3”. The mobile device mayalternatively determine the identity of the floor plan lighting fixturewithout using a display. The mobile device may use information from afloor plan and may select a floor plan lighting fixture from the floorplan. For example, the mobile device may receive the unique identifier“ABC123”, and may select the floor plan lighting fixture thatcorresponds with the transmitting lighting fixture based on a floorplan. The mobile device may associate the determined identity (e.g.,“Downlight 3”) with the received unique identifier (e.g., “ABC123”). Theassociation may be stored in a table or otherwise retained. Associatinga unique identifier with an identity may include storing informationregarding the physical location of the load control device correspondingto the unique identifier. For example, an association may identify aload control device (e.g., a lighting control device) to which a usermay send instructions using the associated unique identifier forcontrolling an amount of power provided to a lighting fixture.

Commissioning of a lighting control system may be performed, e.g.automatically or semi-automatically. A mobile device may determine itslocation, e.g. in a room within a building. The mobile device may be anautonomous mobile device or may be attached to an autonomous mobiledevice (e.g., a drone, Roomba®, and/or the like). The mobile device mayperform commissioning autonomously. For example, the mobile device maytransport itself (e.g., autonomously) to the room in order to performcommissioning. The user may be in a different location (e.g., a remotelocation) than the mobile device and may control or direct the mobiledevice over a network (e.g., the Internet). The mobile device maytransmit images and/or other information to the user and may receivecommands from the user.

The mobile device may determine a floor plan of the location and may usethe floor plan in commissioning the lighting control system. Forexample, the mobile device may create a floor plan of the location bytraveling (e.g., autonomously) around the location and mapping thelocation of one or more objects. For example, the mobile device may beattached to a Roomba®, which may travel around the floor of the locationand map the location of objects (e.g., chairs, tables, walls, etc.) inthe location relative to a predetermined point. In another example, thelocation may be automatically determined, e.g. by a real-time locatingsystem executed on the mobile device. The mobile device may compareinformation from the real-time locating system to a floor plan or a listof locations in order to determine its location. The location may bedetermined using, for example, global positioning system (GPS) data. Ifthe location of the mobile device is located automatically, the locationmay be confirmed by the user.

Once the location of the mobile device is known, the mobile device mayorient itself relative to one or more lighting fixtures within thelocation. For example, one or more of an internal compass, gyroscope,accelerometer, and/or any other sensor for detecting orientation on amobile device may be used to orient the mobile device. A mobile devicemay be oriented by receiving an image from a camera in the mobiledevice, and using one or more known objects and/or points within thelocation. The mobile device may determine its orientation automatically.For example, the device may use the position of one or more lightingfixtures and/or windows to determine its orientation. The device maydetermine its orientation by detecting the location of two or morecorners of the room. The mobile device may receive input from the userregarding its orientation and may factor this input into itsdetermination. The mobile device may alter its orientation autonomously.For example, the mobile device may tilt and/or rotate itself.

Once the location and orientation of the mobile device are known, themobile device may capture an image of the location using a camera. Theimage may include one or more lighting fixtures (e.g., one or moreceiling lights). A lighting fixture (e.g., each lighting fixture) may beconnected to a lighting control device. The mobile device may accessfloor plan data corresponding to the location. The floor plan data maygraphically represent one or more floor plan lighting fixtures. A floorplan lighting fixture (e.g., each floor plan lighting fixture) maycorrelate to a lighting fixture, e.g. within the location of the mobiledevice. The floor plan data may include one or more icons representingthe physical location of the lighting fixtures, representations ofconnections to other devices (e.g., other lighting fixtures, switches,sensors, or other devices), group identifiers indicating groups oflighting control devices that may be controlled together, and/or acombination thereof. The floor plan data may include one or more floorplan identifiers, e.g. one for each floor plan lighting fixture. Thefloor plan data may include programming and/or control information forcontrolling the lighting control devices at identified locations in thefloor plan. The programming and/or control information may be uploadedto a system controller for controlling the lighting fixtures.

The lighting fixture may transmit a unique identifier, and the mobiledevice may receive the unique identifier from the lighting fixture. Theunique identifier may be, for example, the serial number of the lightingcontrol device that is controlling the fixture. For example, if alighting control device with serial number “ABC123” is connected to agiven fixture, that fixture may transmit the unique identifier “ABC123”.Unique identifiers may be transmitted by, for example, VLC (e.g., LiFi)or RF. If the unique identifier is transmitted by VLC, it may be at afrequency that is high enough so as to be invisible to the human eye,e.g. greater than 100 Hz.

Once the mobile device has received the unique identifier, the mobiledevice may associate the received unique identifier with the floor planlighting fixture that correlates with the lighting fixture from whichthe unique identifier was received. The association may be stored in atable or otherwise retained. The association may be performedautomatically, e.g. without the input of a user. The association may beperformed semi-automatically, e.g. the user may confirm that theassociations made are correct as a whole and/or individually.Associating a unique identifier with a floor plan lighting fixture mayinclude storing information regarding the physical location of the loadcontrol device corresponding to the unique identifier. For example, anassociation may identify a load control device to which a user may sendinstructions using the associated unique identifier for controlling anamount of power provided to a lighting fixture.

A control device (e.g., a lighting control device, lighting fixture, orany other type of control device) that is functioning improperly may befixed by troubleshooting problems with the control device. For example,a control device that fails to respond to one or more commands from asystem controller may be fixed by troubleshooting a reason for the lackof response. The mobile device may receive a unique identifier from theimproperly-functioning control device (e.g., as described herein). Themobile device may compare the unique identifier to an expected uniqueidentifier for the control device (e.g., based on floor plan data). Ifthere is a discrepancy between the unique identifiers, the mobile devicemay determine that the control device was incorrectly installed and mayalert a user. The mobile device may modify the expected uniqueidentifier and/or the unique identifier of the control device whentroubleshooting the control device.

Two or more control devices may be connected (e.g., associated), forexample via a wired connection and/or an association. For example, awall switch may be connected to one or more lighting control devices. Animproperly-functioning control device may fail to respond to commandssent from a second control device (e.g., via the system controller) towhich the improperly-functioning control device is expected to beconnected (e.g., the improperly-functioning control device is missing aconnection). The improperly-functioning control device may respond tocommands sent from a third control device (e.g., via the systemcontroller) to which the improperly-functioning control device is notexpected to be connected (e.g., the improperly-functioning controldevice has an extra connection). The mobile device may compare theconnections for the improperly-functioning control device to expectedconnections for the device. If there is a discrepancy, the mobile devicemay determine that the improperly-functioning control device is missinga connection and/or has an extra connection. The mobile device may alertthe user to the discrepancy.

The mobile device and/or the user may control a control device via amobile device (e.g., a mobile application executed on the mobiledevice). For example, the user may select the control device on thedisplay, and may enter a command in the display. The mobile device maysend the command to the control device (e.g., via the systemcontroller). The command may be sent as one or more digital messages.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a perspective view of a representative environment forcommissioning and/or controlling a lighting fixture.

FIG. 2 is a flow diagram depicting an example method for identifying alighting fixture and associating the lighting fixture with a loadcontrol device.

FIG. 3 depicts a representative image that may be displayed on a mobiledevice to identify a lighting fixture.

FIG. 4 depicts another representative image that may be displayed on amobile device to identify a lighting fixture.

FIG. 5 depicts a representative image that may be displayed on a mobiledevice to associate the lighting fixture with a load control device.

FIG. 6A is a flow diagram depicting an example method for identifyingone or more lighting fixtures and associating the lighting fixtures withload control devices using floor plan data.

FIG. 6B is a flow diagram depicting an example method for identifying alocation and/or orientation of a mobile device.

FIG. 6C is a flow diagram depicting an example method for identifying alocation of a mobile device.

FIG. 6D is a flow diagram depicting an example method for identifyingone or more landmarks.

FIG. 7 depicts floor plans for identifying the physical location of amobile device.

FIG. 8 depicts floor plans for identifying the orientation of a mobiledevice within a given location.

FIG. 9 depicts an example user interface for using two or more objectswithin a given location to determine the orientation of a mobile devicewithin the given location.

FIG. 10 depicts an example user interface for identifying one or morelighting fixtures in a given location using overlaid floor plan data.

FIG. 11A is a flow diagram depicting an example method for identifyingand troubleshooting a lighting fixture.

FIG. 11B is a flow diagram depicting an example method for identifyingand troubleshooting a lighting fixture.

FIG. 11C is a flow diagram depicting an example method for configuring acontrol device via a mobile device.

FIG. 12 depicts a representative image of an example user interface thatmay be displayed on a mobile device to troubleshoot one or moreimproperly-functioning lighting fixtures.

FIG. 13 depicts a representative image of an example user interface thatmay be displayed on a mobile device to identify animproperly-functioning lighting fixture.

FIG. 14A depicts a representative image that may be displayed on amobile device to resolve a discrepancy between unique identifiers for alighting fixture.

FIG. 14B depicts a representative image that may be displayed on amobile device to troubleshoot an improperly-functioning control device(e.g., a lighting fixture, lighting control device, load control device,and/or any other type of control device).

FIG. 15 is a flow diagram depicting an example method for identifyingand troubleshooting a control device.

FIG. 16 depicts a representative image of an example user interface thatmay be displayed on a mobile device to troubleshoot one or more controldevices that are functioning improperly.

FIG. 17 depicts a representative image of an example user interface thatmay be displayed on a mobile device to identify one or morediscrepancies between connections for control devices.

FIG. 18 depicts a representative image of an example user interface thatmay be displayed on a mobile device to alert a user to one or morediscrepancies between connections for control devices.

FIG. 19 is a flow diagram depicting an example method for controlling acontrol device via a mobile device.

FIG. 20 depicts a representative image of an example user interface thatmay be displayed on a mobile device to identify one or more controldevices and select a control device to be controlled.

FIG. 21 depicts a representative image of an example user interface thatmay be displayed on a mobile device to control a lighting fixture viathe mobile device.

FIG. 22 depicts a representative image of an example user interface thatmay be displayed on a mobile device to control a motorized windowtreatment via the mobile device.

FIG. 23 shows an example system architecture.

FIG. 24 is a block diagram of an example mobile device.

FIG. 25 is a block diagram of an example system controller.

FIG. 26 is a block diagram depicting an example load control device.

FIG. 27 is a block diagram of an example autonomous mobile device.

FIG. 28 is a block diagram illustrating an example control-sourcedevice.

DETAILED DESCRIPTION

FIG. 1 is a perspective view of a representative environment forcommissioning a load control system 100 having one or more lightingfixtures 108. As shown in FIG. 1 , each of rooms 102, 104, and 106 maybe in the same building and may be installed with one or more lightingfixtures. Rooms 102 and 104 may be on the same floor. Room 106 may be ona different floor than rooms 102 and 104. Each lighting fixture 108 mayinclude one or more lighting loads (e.g., light-emitting diodes (LEDs),fluorescent lamps, etc.) and one or more lighting control devices (e.g.,LED drivers, electronic ballasts, etc.) that are in communication with acontrol device (e.g., a system controller 112). Each lighting controldevice may be configured to adjust an intensity (e.g., a brightness)and/or a color (e.g., a color temperature) of the respective lightingfixture.

The communications between the system controller 112 and the lightingcontrol devices of the lighting fixtures 108 may be wired or wirelesscommunications. The Digital Addressable Lighting Interface (DALI) may bean example protocol used for wired communications between load controldevices. Wireless communication protocols may include WI-FI®,BLUETOOTH®, near field communication (NFC), ZIGBEE®, THREAD, CLEARCONNECT™, and/or other wireless communication protocols.

The system controller 112 may assign a unique identifier to each of thelighting control devices, or group of lighting control devices, withwhich it may be in communication for controlling the amount of powerprovided to the lighting loads of the corresponding lighting fixture.For example, a lighting control device may be assigned a uniqueidentifier by the system controller 112 for communicating load controlinstructions for controlling the lighting load controlled by thelighting control device. The unique identifier may be stored at thelighting control device and may be used by the lighting control deviceto identify the instructions received from the system controller 112 towhich to respond. Though description may be provided for commissioninglighting fixtures having a lighting control device or an LED driver,other lighting control devices may similarly be commissioned asdescribed herein. For example, the lighting fixtures may each comprise adimming circuit for controlling a dimmable lighting load, such as anincandescent lamp, or another lighting control device for controlling adifferent type of lighting load.

The unique identifiers may be randomly assigned to each lighting controldevice (e.g., after installation). The unique identifiers may notindicate the physical locations of the lighting control devices, andthus a user 122 may have difficulty controlling the lighting controldevices based on their corresponding unique identifiers. Each lightingcontrol device may also be assigned a floor plan identifier (e.g.,during a design process of the load control system prior to installationof the lighting control devices) that may identify the physical locationof each lighting control device to the user 122. For example, the floorplan identifier may be included on a floor plan of the physical space(e.g., building, room, etc.) or other means that may enable the user 122to recognize the physical location of a lighting control device or groupof lighting control devices. As the user 122 may know the floor planidentifier associated with each lighting control device, but may beunaware of the unique identifier for communicating instructions to thelighting control device, the user 122 may operate to associate eachfloor plan identifier with the unique identifier assigned to thelighting control device during commissioning of the lighting controlsystem.

As shown in FIG. 1 , the user 122 may know the floor plan identifier ofa lighting control device and may want to associate the lighting controldevice with the unique identifier assigned to lighting control device bythe system controller 112. To determine the unique identifier assignedto the lighting control device, the system controller 112 may instructthe lighting control devices in rooms 102, 104, and 106, or a subsetthereof, to identify the unique identifier assigned thereto. Forexample, the system controller 112 may instruct the lighting controldevices to reveal themselves by blinking a corresponding lighting loadof a lighting fixture by modulating the magnitude of the light emittedby the lighting fixture (e.g., flashing at a very fast rate) in a mannerthat indicates the unique identifier. The blinking may be performed at arate unidentifiable by the human eye, but identifiable by a camera(e.g., greater than approximately 100 Hz). The lighting control devicemay use the associated lighting load of the lighting fixture 108 toidentify the unique identifier assigned to the lighting control deviceby blinking the lighting load of the lighting fixture 108 in a mannerthat identifies the unique identifier. The lighting control device mayblink the lighting load of the lighting fixture 108 by increasing anddecreasing an amount of power provided to the lighting fixture 108, suchthat the unique identifier is exposed by blinking the lighting load ofthe lighting fixture 108. For example, the lighting control device mayturn the lighting load of the lighting fixture 108 on and off,increasing and decreasing the dimming level of the lighting load, orsome combination thereof.

The lighting control devices may also, or alternatively, revealthemselves by communicating a digital message that includes the uniqueidentifier assigned to the lighting control device. For example, theunique identifier may be communicated via a radio frequency (RF)communication, such as WI-FI®, BLUETOOTH®, near field communication(NFC), ZIGBEE®, CLEAR CONNECT™, etc., from the lighting control deviceof the lighting fixtures.

A mobile device 124 may identify the unique identifier provided by thelighting control devices. For example, the mobile device may beimplemented to visually identify the unique identifier in imagescaptured by an image-capturing circuit, such as a camera, of the mobiledevice 124. The mobile device 124 may be positioned by the user 122 toidentify the unique identifier provided by the lighting control devices.The mobile device 124 may be a cellular phone, a smartphone, a tablet, awireless load control device, a photosensor, or another computing devicecapable of being implemented by the user 122 in the load controlenvironment as described herein.

An autonomous mobile device, such as a ground-based autonomous mobiledevice 126 or an airborne autonomous mobile device 128, may beimplemented to identify the unique identifier provided by the lightingcontrol devices. The autonomous mobile devices 126, 128 may autonomouslymove throughout the rooms 102, 104, and/or 106 to capture images of thelighting patterns being provided by the lighting control devices. Theautonomous mobile devices 126, 128 may each include an image-capturingcircuit, such as a camera, that may be implemented to autonomouslycapture images for visually identifying the unique identifier. Inanother example, the autonomous mobile devices 126, 128 may beimplemented to autonomously transport the mobile device 124, which maycapture the images for identifying the unique identifier provided by thelighting control devices. References to mobile device 124 herein mayrefer to autonomous mobile device 126, 128, and vice versa.

The ground-based autonomous mobile device 126 may autonomously movearound the ground of the rooms 102, 104, and/or 106 using wheels,tracks, and/or another form of ground transportation. The ground-basedautonomous mobile device 126 may comprise a control circuit and anelectronic motor that controls the wheels or tracks in response tocontrol signals from the control circuit. The wheels or tracks of theground-based autonomous mobile device 126 may move in the same directionand may be rotated in opposite directions to allow the ground-basedautonomous mobile device 126 to rotate 360 degrees.

The airborne autonomous mobile device 126 may be an unmanned aircraftcapable of autonomously moving through the rooms 102, 104, and/or 106 inthe air (e.g., similar to a drone or other automated unmanned aircraftcapable of transportation in the air). The airborne autonomous mobiledevice 126 may move through the air using propellers, wings, and/oranother form of air transportation. The airborne autonomous mobiledevice 126 may comprise a control circuit and an electronic motor thatcontrols the propellers in response to control signals from the controlcircuit. The airborne autonomous mobile device 126 may take off, fly,hover, and/or land vertically.

The autonomous mobile devices 126, 128 may each be equipped with sensorsfor enabling autonomous control. The sensors may include cameras,infrared (IR) sensors, photocell sensors, geolocation sensors (e.g.,GPS), ultrasonic sensors, lidar sensors, time-of-flight sensors, touchsensors, a gyroscope, an accelerometer, and/or other sensors forenabling autonomous control throughout the rooms 102, 104, and/or 106.The sensors may allow for detection of walls (e.g., including ceilingand floors) and/or other obstacles for avoidance while navigating therooms 102, 104, and/or 106. Monocular vision may be implemented toenable multiple sensors (e.g., cameras) to be separately controlled fora broader range of vision in the space. The touch sensors may beimplemented to detect when a bumper with a built-in touch sensor touchesa wall or other obstacle in the space. Each autonomous mobile device126, 128 may slow down or stop when it detects it is within a predefinedrange of a wall or other obstacle, or when it comes in contact with theobstacle. The sensors may be mounted on the top, sides, and/orunderneath side of the autonomous mobile devices 126, 128. Sensors, suchas cameras or IR sensors, that are mounted on the underneath side of theairborne autonomous mobile device 128 may detect the distance to theground, which may help detect stairs or other drops in space forautonomous navigation (e.g., avoidance, slowing down, landing, etc.).

The autonomous mobile devices 126, 128 may each navigate a space, suchas rooms 102, 104, and 106, based on a two-dimensional orthree-dimensional map stored locally thereon. The maps may be prestoredor generated as the autonomous mobile devices 126, 128 move throughoutthe space. The maps may be updated over time as objects move within thespace. To create the map of the space, the autonomous mobile devices126, 128 may follow the walls of the rooms 102, 104, 106 and senseobstacles within the rooms 102, 104, 106. The autonomous mobile devices126, 128 may record images of the rooms 102, 104, 106 with the camerasand/or IR sensors to generate the maps of the space.

The autonomous mobile devices 126, 128 may be remotely controlled basedon instructions from a user, such as the user 122. The user 122 maycontrol the movement and the camera of the autonomous mobile devices126, 128 using the network device 124 or a remote computing device.

The camera of each of the mobile devices 124, 126, 128 may take imagesof the lighting fixtures 108 and may identify the unique identifierprovided by the lighting control device in the lighting fixtures. Theunique identifier may be associated with the floor plan identifierassigned to the lighting control device. The association may beperformed via the mobile devices 124, 126, 128, the system controller112, and/or a server 114 (e.g., a remote computer). If the associationis performed at the mobile devices 124, 126, 128, the association may besent to the server 114 and/or the system controller 112 for storage.

The system controller 112 may send the identification instructions tothe lighting control device upon receiving a trigger from the user 122.For example, the user 122 may select a button on one of the mobiledevices 124, 126, 128 that causes the mobile device to send a message tosystem controller 112 to trigger transmission of the identificationinstructions. The mobile devices 124, 126, 128 may each communicate withthe system controller 112 directly via a short range wireless channel(e.g., WI-FI®, BLUETOOTH®, etc.) and/or indirectly via the server 114and the internet 116 (e.g., using a WI-FI® network, a cellular network,a WI-MAX® network, etc.). The server 114 may forward communicationsreceived from the mobile devices 124, 126, 128 to the system controller112 using a wired or wireless communication.

In another example, the identification instructions may be sent to eachlighting control device directly from the mobile devices 124, 126, 128.For example, the mobile devices 124, 126, 128 may send theidentification instructions via a broadcast message that may cause anylighting control device that receives the instructions to identify itsunique identifier. The broadcast message may be sent via any short rangewireless channel (e.g., WI-FI®, BLUETOOTH®, etc.), for example.

As the lighting control device in the lighting fixture 108 may beincluded in a group of lighting control devices blinking theirrespective unique identifier, the mobile devices 124, 126, 128 may eachbe configured to capture images (e.g., multiple sequential images, suchmoving images or videos) that include the unique identifier of multiplelighting control devices without having to change locations. Forexample, the camera on each mobile device 124, 126, 128 may be able tocapture images of each of the lighting fixtures being blinked by therespective lighting control devices in the group to visually identifythe unique identifier of each lighting control device in the group. Thecamera on each mobile device 124, 126, 128 may be able to capture imagesof each of the blinking lighting fixtures from one location or may movefrom the physical location of one lighting control device to the next tocapture images of the unique identifier of each lighting control device.While FIG. 1 illustrates identification of a unique identifier for alighting control device (e.g., an LED driver), the unique identifier maybe similarly identified for other lighting control devices capable ofcontrolling a lighting load, such as an LED driver, a ballast, or otherlighting control device, for example.

FIG. 2 is a flow diagram depicting an example method 200 for identifyinga lighting fixture (e.g., a lighting control device that controls alighting load of the lighting fixture) and associating a uniqueidentifier with a floor plan identifier of the lighting fixture, e.g.,using a mobile device (e.g., the mobile device 124 and/or the autonomousmobile devices 126, 128). The method 200 may start at 202. At 204, thelighting fixture may be identified in an image. The lighting fixture maybe automatically identified by the identifying a region of relativelyhigher brightness in the image. The lighting fixture may be identifiedbased on user input. For example, the mobile device may capture an imagethat includes a lighting fixture and display the image on a display ofthe mobile device for user identification of the fixture within theimage. The mobile device may be located in a given location. Forexample, the location may be a hallway, an area, a space, or a room of abuilding. The mobile device may be at a position within the location.The image of the lighting fixture may be a single image or a video ofthe location. The image may include one or more lighting fixtures. Themobile device may highlight or otherwise indicate the lighting fixturesin the image so that they are identifiable by the user. The mobiledevice may prompt the user to select a lighting fixture to commission.Alternatively, the mobile device may select a lighting fixtureautomatically (e.g., based on a predetermined order). When more than onelighting fixture is in the image, multiple lighting fixtures may beselected.

At 206, a unique identifier of the load control device in the lightingfixture may be identified. The unique identifier may be identified bythe mobile device, the system controller, or another device. The uniqueidentifier may be automatically identified by the mobile device. Theunique identifier may identify a lighting control device that controlsthe lighting fixture. The unique identifier may be an alphanumericstring. The lighting control device may transmit the unique identifierby, for example, causing a lighting load of the lighting fixture toblink in a predetermined pattern (e.g., to modulate the light emitted bythe lighting fixture to transmit the unique identifier via VLC signals)or otherwise blink to communicate data. The unique identifier may becommunicated at a frequency that is imperceivable to the human eye(e.g., greater than approximately 100 Hz). The camera on the mobiledevice may capture the images that include the signaling of the uniqueidentifier, which may be interpreted by the mobile device, the systemcontroller, or another device.

The unique identifier may also, or alternatively, be communicated viaRF. For example, the unique identifier may be signaled using WI-FI®,BLUETOOTH®, near field communication (NFC), ZIGBEE®, CLEAR CONNECT™,and/or another RF protocol. If there is more than one lighting fixture,the mobile device may determine which lighting fixture communicated theunique identifier by comparing signal strengths. For example, the mobiledevice may determine that the unique identifier associated with thestrongest RF signal was received from the lighting control device thatis physically closest to the mobile device. The mobile device may useinput from the user to determine which lighting fixture communicated theunique identifier and/or to confirm that the mobile device has selectedthe correct lighting fixture. For example, the mobile device may promptthe user to indicate which lighting fixture communicated the uniqueidentifier. The user may select a button on the mobile device to causethe mobile device to send a digital message to a lighting control deviceto blink its respective lighting load, so that the user can view theblinking lighting load of the lighting control device in the physicalspace that corresponds with a given RF signal strength or uniqueidentifier.

At 208, a floor plan identifier for the lighting fixture from which theunique identifier was received may be selected. For example, the floorplan identifier may be selected based on user input. The mobile devicemay display the received unique identifier on the display of the mobiledevice. The user may select the floor plan identifier and may providethe selected floor plan identifier to the mobile device by, for example,entering the floor plan identifier into a text box displayed on thedisplay of the mobile device. The floor plan identifier may be analphanumeric string. For example, a floor plan identifier for a givenlighting fixture may be “Downlight 1”. The mobile device may present asuggested floor plan identifier or a list of suggested floor planidentifiers to the user based on the floor plan data. The user maychoose whether to use the suggested floor plan identifier or may chooseone from the list of suggested floor plan identifiers. The floor plandata may be generated during a design process of the load control systemprior to installation of the load control system. Each lighting fixturewithin a given location may have a unique floor plan identifier in thefloor plan data. The mobile device may prompt the user to confirm thatthe selected floor plan identifier is correct.

At 210, the selected floor plan identifier may be associated with thereceived unique identifier. The association may be performed by themobile device, the system controller, or another device. The associationbetween the floor plan identifier and the unique identifier may bestored in a memory of the mobile device and may be transmitted by themobile device to an external device having a memory (e.g., the systemcontroller, a server, and/or another external device) and stored on theexternal device. For example, the system controller and/or the servermay be configured to identify commands for the lighting control devicesusing the floor plan identifiers, and transmit the commands to thelighting control devices using the unique addresses of the lightingcontrol devices. In addition, the association may be transmitted to thelighting control devices and stored on a memory of the lighting controldevices, such that the lighting control devices can identify messagesthat include their floor plan identifier. The method 200 may end at 212and the associations may be used to configure and/or control thelighting loads in the lighting control system.

The example method 200 may be performed with the user in a differentlocation (e.g., a remote location) than the mobile device. For example,the user may communicate with an autonomous mobile device using a remotecomputing device. The remote computing device may be connected to theautonomous mobile device via a network. For example, the remotecomputing device may be connected to the autonomous mobile device via awireless communication signal (e.g., WI-FI®, BLUETOOTH®, near fieldcommunication (NFC), ZIGBEE®, THREAD, and/or CLEAR CONNECT™). Theautonomous mobile device may send images from an internal camera to theremote computing device, and the user may interact with the remotecomputing device to provide commands to the autonomous mobile device.The autonomous mobile device may receive one or more inputs from theuser via the remote computing device and may perform commissioning basedon the inputs.

The example method 200 may be performed autonomously by an autonomousmobile device (e.g., without input from a user). At 204, the autonomousmobile device may identify the lighting fixture in the location. Theautonomous mobile device may move to the location using an electricmotor that is connected to one or more modes of transportation. Forexample, the autonomous mobile device may be a drone, and the electricmotor may be connected to one or more propellers. The autonomous mobiledevice may orient and/or locate itself such that one or more lightingfixtures are in view of the internal camera. Alternatively, theautonomous mobile device may determine its location relative to alighting fixture using, for example, a real-time locating systemexecuted on the autonomous mobile device or an RF signal received fromthe lighting fixture.

The autonomous mobile device may select a lighting fixture to commissionautomatically. For example, the autonomous mobile device may selectlighting fixtures to commission in a predetermined order (e.g., closestto furthest). The lighting fixture may be automatically identified bythe autonomous mobile device identifying a region of relatively higherbrightness in the image (e.g., above a predefined threshold). If thereare multiple lighting fixtures in the image, the autonomous mobiledevice may select one of the lighting fixture to commission or maycommission the lighting fixtures in parallel. For example, theautonomous mobile device may choose the closest lighting fixture (e.g.,based on the largest region of higher brightness in the image) tocommission. At 206, the unique identifier of the load control device inthe lighting fixture may be identified as disclosed herein.

At 208, the autonomous mobile device may automatically select a floorplan identifier for the lighting fixture. For example, the autonomousmobile device may use floor plan data that is accessible to theautonomous mobile device to select a floor plan identifier. The floorplan data may be stored on a memory of the autonomous mobile deviceand/or may be stored elsewhere and accessed by the autonomous mobiledevice.

The floor plan data may associate a lighting fixture in a given locationwith a corresponding floor plan identifier for the lighting fixture. Forexample, the floor plan data may have a floor plan identifier for eachlighting fixture in the location. The floor plan identifier may be analphanumeric string. The autonomous mobile device may access the floorplan data and may correlate the lighting fixture from which the uniqueidentifier was received with the corresponding floor plan identifier.For example, the autonomous mobile device may use information regardingits location, position (e.g., within the location), and/or orientationto determine which floor plan identifier corresponds to the lightingfixture. The floor plan data may identify the location of one or moreknown objects (e.g., windows, doors, lighting fixtures, corners of theroom, etc.) in the location. The autonomous mobile device may determineits location relative to the known objects to determine which floor planidentifier corresponds to the lighting fixture. At 210, the selectedfloor plan identifier may be associated with the received uniqueidentifier as described herein. The autonomous mobile device mayassociate the selected floor plan identifier with the received uniqueidentifier automatically. The method 200 may end at 212 and theassociations may be used to configure and/or control the lighting loadsin the lighting control system.

FIG. 3 depicts an example image 308 that may be obtained by a mobiledevice for displaying one or more lighting fixtures (e.g., at 204 of themethod 200 of FIG. 2 ). The image 308 may represent a frame of a videogenerated by the mobile device, for example. The mobile device may be,for example, one of the mobile device 124 and/or the autonomous mobiledevices 126, 128. The image 308 may be recorded by the camera on themobile device and/or displayed on the mobile device for receiving userinput. The image 308 may be recorded on an autonomous mobile device andtransmitted to another mobile device for displaying the image on theother mobile device. The image 308 may be stored at an autonomous mobiledevice and processed by the autonomous mobile device to autonomouslyperform commissioning of the lighting fixtures. The image 308 mayinclude the lighting fixtures within a room, or a subset thereof.

The mobile device may detect a lighting fixture 304 automatically orbased on user indication. The mobile device may use an internal camerato capture an image or video of the lighting fixture 304. The user mayorient the mobile device such that the internal camera is pointedtowards one or more lighting fixtures. The image 308 may be displayed ona display of the mobile device for the user.

The autonomous mobile device may rotate and/or tilt itself and/or theinternal camera such that the internal camera is pointed towards thelighting fixtures to capture images, such as the image 308. In anotherexample, the user may be in a different location than the autonomousmobile device (e.g., a remote location), and may control the mobiledevice via a network connection to rotate and/or tilt itself and/or theinternal camera. The user may send commands to the mobile device via thenetwork connection and may receive images and/or other information fromthe mobile device. The image 308 may be displayed at the remote locationsuch that the user can see the image 308.

The mobile device may detect the lighting fixture 304 automatically bycomparing portions of the image 308 to determine whether one or moreportions of the image 308 exceed an intensity threshold. For example,the mobile device may determine that the portion of the image 308 withinthe area 302 exceeds the intensity threshold and may determine that thearea 302 includes the lighting fixture 304. The intensity threshold maybe relative to the intensity level of the other portions of the image308 to compensate for the lighting level of different videos, images,mobile device displays, or the like. The mobile device may detectlighting fixtures within the area 302 by detecting the shapes of one ormore lighting fixtures within the image 308. The mobile device may bepreconfigured to identify the size and/or shape of standard lightingfixtures in a building. The lighting fixtures may be compared to otherportions of the room to determine the relative size of the lightingfixtures. For example, the lighting fixtures may be compared to ceilingtiles, windows, or other objects within the image to determine therelative size of the lighting fixtures. The largest lighting fixture, orgroup of lighting fixtures, may be automatically detected by the mobiledevice for association.

In another example, a user may indicate that the lighting load area 302includes the lighting fixture 304. The user may provide such anindication by selecting within the area 302, circling the area 302, orotherwise indicating the area 302. The mobile device may assume there isa fixture within a predefined area indicated by a user, or mayautomatically detect one or more lighting fixtures within the identifiedportion of the image, as described herein.

After the lighting load area 302 is identified, the mobile device mayanalyze incoming video or frames of the video to detect the uniqueidentifier indicated by the lighting load of the lighting fixture 304.The unique identifier may be automatically detected and stored at themobile device.

FIG. 4 depicts an example image 408 that may be generated by a mobiledevice for commissioning a lighting control device to display and/oridentify a unique identifier 414 for the lighting control device (e.g.,at 206 of the method 200 of FIG. 2 ). The image 408 may represent aframe of a video generated by the mobile device, for example. The image408 may include the lighting fixtures within a location (e.g., a room ofa building), or a subset thereof. The mobile device may overlay floorplan data, such as a unique identifier 414 that the mobile device hasreceived from a lighting control device (not shown), onto the image 408.The unique identifier 414 may be signaled by the lighting load of thelighting fixture 304. The unique identifier 414 may be displayed in apopup window 410. The mobile device may indicate the lighting fixture304 associated with the unique identifier 414 via overlay. If there ismore than one lighting control device in the location, the mobile devicemay determine which lighting control device sent the unique identifier414. For example, the mobile device may determine that the uniqueidentifier 414 was received from a lighting control device controllingthe lighting load of lighting fixture 304. The mobile device mayindicate to the user which lighting control device sent the uniqueidentifier 414. The popup window 410 may include a commission button 412that, when pressed, may allow the user to enter floor plan data, such asa floor plan identifier, for the lighting fixture 304. The mobile devicemay prompt the user to confirm that the entered floor plan data iscorrect. The mobile device may automatically select a lighting fixtureto commission. For example, the mobile device may commission multiplelighting fixtures in a predetermined order (e.g., closest in the imageto furthest).

Referring again to FIG. 4 , a lighting control device (not shown) maycontrol the lighting load of the lighting fixture 304 and may use thelighting load of the lighting fixture 304 to signal the uniqueidentifier of the lighting control device. For example, the mobiledevice may receive the signal from the lighting load of the lightingfixture 304 and may identify the unique identifier being signaled. Theunique identifier may be transmitted and received via VLC signals. Forexample, the unique identifier of the lighting control device may besignaled by blinking the lighting load of the lighting fixture 304 in apattern, sequence, rate, or the like that corresponds to the uniqueidentifier.

The lighting control device may signal its unique identifier via, forexample, RF signals. The mobile device may receive an RF signal from thelighting control device and determine the unique identifier based on thereceived signal (e.g., included in the RF signal). The RF signal may bea short-range signal (e.g., a WI-FI® signal, a BLUETOOTH® signal, a nearfield communication (NFC) signal, a ZIGBEE® signal, a CLEAR CONNECT™signal, or the like), or another RF signal. The mobile device mayreceive unique identifiers from more than one lighting control device atthe same time. The mobile device may use the received signal strength todetermine which unique identifier was sent by which lighting controldevice. For example, the mobile device may determine that the uniqueidentifier associated with the strongest RF signal was received from thelighting control device that is physically closest to the mobile device.The mobile device may use information from the image 308 to determinewhich lighting control device is physically closest to the mobiledevice. For example, the mobile device may identify the lighting controldevice in the lighting fixture 304 as being physically closest to themobile device based on its relative size to other lighting fixtures. Themobile device may use a real-time locating system executed on the mobiledevice (e.g., GPS, triangulation, NFC, geolocation, etc.) to determinewhich lighting control device is physically closest to the mobiledevice. The physically closest lighting control device may be located ina single lighting fixture that is included in the image, when onelighting fixture is identified. The mobile device may use input from theuser to determine which lighting control device is closest to the mobiledevice. For example, the mobile device may prompt the user to select thelighting control device that is closest to the mobile device. The usermay select the lighting fixture 304 as being the lighting device that isphysically closest. The lighting device that is identified as beingphysically the closest may be assumed by the mobile device as having theunique identifier that is received with the strongest RF signal.

FIG. 5 depicts an example image 508 that may be displayed on a mobiledevice to associate the unique identifier of a lighting control devicewith a floor plan identifier (e.g., at 208 of the method 200 of FIG. 2). The image 508 may represent a frame of a video recorded by and/orstored on the mobile device, for example. The image 508 may include thelighting fixtures within a room, or a subset thereof. The popup window410 may display a text box 514 and/or a confirmation button 512. Thetext box 514 and/or the confirmation button 512 may be displayed, e.g.instead of the commission button 412 shown in FIG. 4 . The image 508 maybe displayed on the mobile device after the user has pressed thecommission button 412 shown in FIG. 4 . The user may select a floor planidentifier by entering a floor plan identifier into the text box 514.The floor plan identifier may be, for example, an alphanumeric sequenceor other character sequence. The floor plan identifier may be determinedfrom a blueprint or other drawing showing the floor plan of thebuilding. After the user has entered a floor plan identifier into textbox 514, the user may press the confirmation button 512.

The mobile device may automatically select a floor plan identifier forthe lighting control device. For example, the mobile device may usefloor plan data that is accessible to the mobile device to select afloor plan identifier. The floor plan data may be stored on a memory ofthe mobile device or may be stored elsewhere and accessed by the mobiledevice. The mobile device may display the selected floor plan identifierin the text box 514. The mobile device may associate a floor planidentifier with the unique identifier without displaying popup window410.

The mobile device may associate the unique identifier of the lightingcontrol device (not shown) connected to the lighting fixture 304 withthe selected floor plan identifier. For example, a lighting controldevice may use the lighting load of the lighting fixture 304 to signal aunique identifier. The unique identifier may be, for example, “ABC123”.The mobile device may receive the signaled unique identifier. The mobiledevice may indicate to the user that the unique identifier has beenreceived. The mobile device may determine to commission the lightingcontrol device. The user may indicate that they wish to commission thelighting control device by pressing the commission button 412 shown inFIG. 4 . The mobile device may prompt the user to select a floor planidentifier and enter it in text box 514. The mobile device may select afloor plan identifier automatically. For example, “Downlight 1” may beselected. The floor plan identifier may be presented to the userautomatically by the mobile device. The user may press the confirmationbutton 512 to confirm the correct entry of the floor plan identifier.The mobile device may automatically confirm the correct selection of thefloor plan identifier. The mobile device may prompt a user to confirmthe correct selection by pressing confirmation button 512. Other floorplan data may be presented to, or entered by, the user. The mobiledevice may associate the received unique identifier and the selectedfloor plan identifier (e.g., at 210 of the method 200 of FIG. 2 ). Theassociation between the unique identifier and the floor plan identifiermay be stored on the mobile device and/or on an external device (e.g., aserver, a system controller, etc.).

When the mobile device is an autonomous mobile device (e.g., such as theautonomous mobile devices 126, 128), the autonomous mobile device may beconfigured to process the images automatically without transmitting theimages to another device. For example, the autonomous mobile device maybe configured to record and store an image (e.g., the image 308 as shownin FIG. 3 ) and process the image to detect the lighting fixture 304.The autonomous mobile device may be configured to process the image toidentify the unique identifier 414 signaled by the lighting load of thelighting fixture 304. In addition, the autonomous mobile device mayautomatically determine a floor plan identifier for the lighting fixture304 and associate the unique identifier of the lighting fixture 304 withthe determined floor plan identifier. The images shown in FIGS. 3-5 mayrepresent images recorded, but not displayed, by the autonomous mobiledevice.

FIG. 6A is a flow diagram depicting an example method 600 foridentifying one or more lighting fixtures (e.g., lighting controldevices control respective lighting loads of the lighting fixtures) andassociating a unique identifier with a floor plan identifier of each ofthe lighting fixtures. The method 600 may start at 602. The method 600may be performed on a programming device, such as a mobile device (e.g.,the mobile device 124 and/or the autonomous mobile devices 126, 128), ordistributed across multiple programming devices, such as a mobiledevice, a system controller, or another device. At 604, a location ofthe mobile device may be determined. For example, the location may be aroom in a building such as an office, a conference room, a hallway, orany other space or area within a building. A position of the mobiledevice within the location may be determined. The location of the mobiledevice may be determined by user input (e.g., the user may select thecorrect location from a list of predefined locations). The location maybe determined automatically, for example, using a location trackingtechnique and/or floor plan data. The location of the autonomous mobiledevice may be determined by a real-time locating system (RTLS) (e.g.,triangulation, trilateration, NFC, indoor geolocation, etc.). Thelocation may be confirmed by the user.

At 606, an orientation of the mobile device (e.g., relative to otherobjects within the location) may be determined. The orientation may bedetermined by using real-time orientation sensors (e.g., a sensor suchas an accelerometer, gyroscope, and/or any other sensor for detectingorientation on a mobile device). The orientation may be determined byuser input. For example, the user may select the orientation. The mobiledevice may prompt the user to make selections on a display of the mobiledevice that indicate the orientation of the mobile device. For example,the mobile device may prompt the user to indicate the location of two ormore known objects within the location. The known objects may be, forexample, corners of the room, windows, lighting fixtures, or otherobjects in the location. The mobile device may determine its orientationbased on the relative location of the known objects. For example, asshown in FIG. 9 , the user may indicate two corners of a room in whichthe mobile device is located, and the mobile device may determine itsorientation based on the relative location of the two corners of theroom. The mobile device may use a combination of techniques (e.g.,real-time orientation sensors and user input) to determine itsorientation.

Referring again to FIG. 6A, at 608, the mobile device may determinefloor plan data for the location. The mobile device may access adatabase containing the floor plan data. The mobile device may overlayfloor plan data onto an image 308 of the location. The mobile device mayuse a map of the location (e.g., that the mobile device has created) toaid in determining the floor plan data. The floor plan data maycorrelate the physical lighting fixtures at the location withcorresponding floor plan identifiers. For example, each of the one ormore lighting fixtures 304 may have a corresponding floor planidentifier in the floor plan data. The floor plan data may include oneor more icons representing the physical location of the lightingfixtures, representations of connections to other devices (e.g., otherlighting fixtures, switches, sensors, or other devices), groupidentifiers indicating groups of lighting control devices that may becontrolled together, and/or a combination thereof. The floor plan datamay include a floor plan identifier. The floor plan data may includeprogramming and/or control information for controlling the lightingcontrol devices at identified locations in the floor plan. Theprogramming and/or control information may be uploaded to a systemcontroller for controlling the lighting fixtures.

At 610, the mobile device may receive one or more unique identifiersfrom the one or more lighting fixtures 304. For example, the mobiledevice may receive a separate unique identifier from each lightingfixture 304 within the location. A unique identifier may be generated bya lighting control device activating a lighting load of a correspondinglighting fixture 304. The mobile device may associate the receivedunique identifiers with the corresponding floor plan identifiers. Theassociation may be stored in a memory of the mobile device. Theassociation may be transmitted by the mobile device to an externaldevice having a memory (e.g., a server, a system controller, or anotherexternal device) and stored on the external device. The association maybe transmitted to the lighting control device and stored on a memory ofthe lighting control device. The method 600 may end at 612 and theassociations may be used to configure and/or control the lighting loadsin the lighting control system. For example, the user may select alighting fixture on an image of the mobile device (e.g., or anotherdevice) that is identified by the floor plan identifier and maycommunicate configuration information and/or control instructions to thelighting control device of the lighting fixture using the uniqueidentifier associated therewith. The communication may be performeddirectly, or via another device, such as a system controller.

The example method 600 may be performed with the user in a differentlocation (e.g., a remote location) than the mobile device. For example,the user may communicate with an autonomous mobile device using a remotecomputing device. The remote computing device may be connected to theautonomous mobile device via a network. For example, the remotecomputing device may be connected to the autonomous mobile device via awireless communication signal (e.g., WI-FI®, BLUETOOTH®, near fieldcommunication (NFC), ZIGBEE®, THREAD, and/or CLEAR CONNECT™). Theautonomous mobile device may send images from an internal camera to theremote computing device, and the user may interact with the remotecomputing device to provide commands to the autonomous mobile device.The autonomous mobile device may receive one or more inputs from theuser via the remote computing device and may perform commissioning basedon the inputs.

The example method 600 may be performed autonomously by an autonomousmobile device (e.g., without input from a user). At 604, a location ofthe autonomous mobile device may be determined. For example, thelocation may be a room in a building such as an office, a conferenceroom, a hallway, or any other space or area within a building. Aposition of the mobile device within the location may be determined. Forexample, the location may be a room in a building, and the position maybe a point within the room. The location of the autonomous mobile devicemay be determined automatically. For example, the location and/or theposition of the autonomous mobile device may be determined by areal-time locating system (RTLS) (e.g., triangulation, trilateration,NFC, indoor geolocation, etc.). Examples of real-time location systemsare described in greater detail in commonly-assigned U.S. PatentApplication Publication No. 2017/0038787, published Feb. 9, 2017,entitled LOAD CONTROL SYSTEM RESPONSIVE TO THE LOCATION OF AN OCCUPANTAND/OR MOBILE DEVICE, the entire disclosure of which is herebyincorporated by reference.

At 606, an orientation of the autonomous mobile device may bedetermined. The orientation may be determined automatically. Forexample, the autonomous mobile device may use data from the real-timeorientation sensors and/or an internal camera to determine theorientation. The autonomous mobile device may create a map of thelocation based on the position of one or more objects in the locationrelative to a predetermined point. The orientation may be determined byautomatically detecting the relative location of two or more knownobjects within the location. The known objects may be, for example,corners of the room, windows, lighting fixtures, or other objects in thelocation. For example, as shown in FIG. 9 , the autonomous mobile devicemay determine its orientation by automatically detecting two corners ofa room in which the autonomous mobile device is located.

Referring again to FIG. 6A, at 608, the autonomous mobile device maydetermine floor plan data for the location. The floor plan data may bestored on a memory of the autonomous mobile device and/or may be storedelsewhere and accessed by the autonomous mobile device. The floor plandata may associate a lighting fixture in a given location with acorresponding floor plan identifier for the lighting fixture. Forexample, the floor plan data may have a floor plan identifier for eachlighting fixture in the location. The floor plan identifier may be analphanumeric string. The autonomous mobile device may access the floorplan data and may correlate the lighting fixture from which the uniqueidentifier was received with the corresponding floor plan identifier.For example, the autonomous mobile device may use information regardingits location, position (e.g., within the location), and/or orientationto determine which floor plan identifier corresponds to the lightingfixture. The floor plan data may identify the location of the knownobjects. The autonomous mobile device may determine its locationrelative to the known objects to determine which floor plan identifiercorresponds to the lighting fixture.

At 610, the autonomous mobile device may receive one or more uniqueidentifiers from the one or more lighting fixtures as described herein.The autonomous mobile device may automatically associate a receivedunique identifier with the floor plan identifier for the lightingfixture from which the unique identifier was received. The method 600may end at 612 and the associations may be used to configure and/orcontrol the lighting loads in the lighting control system. For example,a system controller (e.g., or other device) may send a command to thelighting control device of the lighting fixture using the uniqueidentifier associated therewith. The command may communicateconfiguration information and/or control instructions for the lightingcontrol device. For example, the command may instruct the lightingcontrol device to increase or decrease an intensity of the lightingfixture, turn the lighting fixture on or off, and/or the like. Thecommand may be sent by the system controller automatically (e.g.,without input from the user). The command may be sent based on, forexample, a time of day, an ambient light level of the location, adetection of motion in the location, and/or the like.

FIG. 6B is a flow diagram depicting an example method 3000 foridentifying a location and/or orientation of a mobile device (e.g., themobile device 124 and/or the autonomous mobile devices 126, 128). Themethod 3000 may be performed on a programming device, such as the mobiledevice, or distributed across multiple programming devices, such as themobile device, a system controller, control devices, and/or otherdevices. The method 3000 may be performed with user input or withoutuser input (e.g., autonomously). The method 3000 may start at 3002. At3004, an application may be launched on the mobile device. Theapplication may be, for example, an application for use in installing,commissioning, and/or controlling one or more control devices (e.g.,lighting fixtures, lighting control devices, and/or other types ofcontrol devices). At 3006, a job and/or area of work may be selected.The selected job and/or area of work may be authenticated by a server.At 3008, the mobile device (e.g., the application) may determine itsorientation. The orientation may be determined automatically (e.g.,using a real-time orientation sensors). For example, the mobile devicemay use an accelerometer, an altimeter, a gyroscope, and/or any othersensor for detecting orientation on a mobile device to determine itsorientation. The accelerometer and/or gyroscope may indicate, forexample, that the mobile device is facing in an upwards direction. Theorientation may be determined based on two or more defined portions of aroom captured in an image by the mobile device.

At 3010, the mobile device may determine its current location. Themobile device may determine its location based on user input. Forexample, a user of the mobile device may select the current location ona floor plan displayed on a display of the mobile device. The mobiledevice may determine its location without user input (e.g.,automatically). For example, the mobile device may determine itslocation using a real-time locating system executed on the mobile device(e.g., GPS, triangulation, NFC, geolocation, etc.). At 3012, the mobiledevice may process an image taken by an internal camera of the mobiledevice of the room in which the mobile device is located. In processingthe image, the mobile device may identify one or more landmarks in theimage. For example, the landmarks may be corners, walls, a ceiling, afloor, windows, etc. The mobile device may identify the landmarks usingone or more image analysis techniques. The mobile device may process abest fit of the floor plan against the image using one or more of theidentified landmarks (e.g., wall and/or ceiling interfaces) at 3014. At3016, the mobile device may display a best fit reflected ceiling and/orwall onto an image taken by the camera and shown on a display of themobile device. The method 3000 may end at 3018.

FIG. 6C is a flow diagram depicting an example method 3100 foridentifying a location of a mobile device (e.g., the mobile device 124and/or the autonomous mobile devices 126, 128) which may be executed bya mobile application on the mobile device. The method 3100 may beperformed on a programming device, such as the mobile device, ordistributed across multiple programming devices, such as the mobiledevice, a system controller, control devices, and/or other devices. Themethod 3100 may be performed with user input or without user input(e.g., autonomously). The method 3100 may start at 3102. At 3104, themobile device may determine its current location. The mobile device maydetermine its location based on user input. For example, a user of themobile device may select the current location on a floor plan displayedon a display of the mobile device. The mobile device may determine itslocation without user input (e.g., automatically). For example, themobile device may determine its location using a real-time locatingsystem executed on the mobile device (e.g., GPS, triangulation, NFC,geolocation, etc.). At 3106, the mobile application may determinewhether the mobile device has been moved since it determined its currentlocation at 3104. If the mobile device has not been moved, the method3100 may end at 3114. The method 3100 may be executed periodically(e.g., beginning at 3102), for example, while the method 3000 shown inFIG. 6B is being executed. If the device has been moved, the method 3100may continue to 3108. At 3108, the mobile device may estimate the changein the mobile device's location. The mobile device may estimate thechange based on, for example, dead reckoning. For example, the mobiledevice may use one or more of its internal GPS, accelerometer,gyroscope, altimeter, and/or compass to estimate the change in locationvia dead reckoning. At 3110, the mobile device may attempt to obtain afix to reconcile the location with the estimate by using input from thecamera of the mobile device. At 3112, the mobile device may compute thechange in the mobile device's location based on the highest probability.The mobile device may compute the change based on, for example, a Kalmanfilter. The method 3100 may return to 3104 and the device may determineits current location based on its previous location and the computedchange.

FIG. 6D is a flow diagram depicting an example method 3200 foridentifying one or more landmarks within an image taken by an internalcamera of a mobile device (e.g., the mobile device 124 and/or theautonomous mobile devices 126, 128). The method 3200 may be performed ona programming device, such as the mobile device, or distributed acrossmultiple programming devices, such as the mobile device, a systemcontroller, control devices, and/or other devices. The method 3200 maybe performed with user input or without user input (e.g., autonomously).The method 3200 may be used to obtain a fix of a mobile device (e.g., at3110 of method 3100 of FIG. 6C). The method 3200 may start at 3201. At3202, the mobile device may query the internal camera and may receive animage from the internal camera. At 3204, the mobile device may processthe image received from the internal camera, for example using an imageprocessing and/or image analysis technique. At 3206, the mobile devicemay identify one or more components in the image. For example, themobile device may identify a corner (e.g., at 3208) based on 3 points ofcolor change in the image, a wall (e.g., at 3210) based on a line ofcolor change in the image, and/or a fixture (e.g., at 3212) based on arectangle and/or polygon color change. At 3214, the mobile device maydetermine whether a landmark type has been identified in the image. Ifno landmark type is identified, the mobile device may reject thelandmark at 3220 and the method 3200 may end at 3228. The method 3200may be executed periodically (e.g., beginning at 3201), for example,while the method 3000 shown in FIG. 6B is being executed. If at leastone landmark type is identified, the mobile device may accept thelandmark at 3216. The mobile device may correlate the identifiedlandmark type with a blueprint (e.g., a floor plan) of the area in whichthe mobile device is located at 3218. At 3222, the mobile device maydetermine whether a landmark (e.g., a specific landmark) has beenidentified. If no landmark is identified, the mobile device may rejectthe landmark at 3220 and the method 3200 may end at 3228. If at leastone landmark is identified in the image, the mobile device may estimatea range (e.g., in three-dimensional space as defined by X, Y, and Zaxes) at 3224. At 3226, the mobile device may use the estimated landmarkrange to obtain a fix (e.g., at 3110 of method 3100 of FIG. 6C) and/orto display a ceiling overlay on a display of the mobile device (e.g., at3016 of the method 3000 of FIG. 6B and/or at 2910 of the method 2900 ofFIG. 11B). The method 3200 may end at 3228.

FIG. 7 depicts an example floor plan 704 for identifying the physicallocation of a mobile device (e.g., at 604 of the method 600 of FIG. 6A).An image 708 may be displayed on a mobile device and/or storedinternally thereon. The image 708 may depict one or more floor plans fora given location. The image 708 may display the floor plan 704 of abuilding. The floor plan 704 in the image 708 may include depictions ofone or more rooms 710, 712, and 714. Each room 710, 712, and 714 mayreflect a location in which one or more lighting fixtures are installed,or are to be installed. For example, the location of one or morelighting fixtures B1-B27 within the rooms 710, 712, 714 may be depicted.The lighting fixtures B1-B27 may be installed a particular distance fromother objects (e.g., walls, other lighting fixtures, etc.) in the room.Each of the lighting fixtures B1-B27 may be assigned a unique identifier(e.g., serial number, address, etc.) after installation forcommunicating with the lighting fixture.

The rooms 710, 712, and 714 may be on the same floor of a building or ondifferent floors. A user of the mobile device may select the room inwhich the mobile device is located. For example, the user may select theroom 710 as being the room in which the mobile device is located. Theuser may select the room 710 by pressing a select room button 702 andthen selecting, for example, room 710. Alternatively, the user mayselect the room 710 and confirm their choice by pressing the select roombutton 702. The user may select the room 710 by choosing it from a listof rooms.

The mobile device may determine its location within the floor plan 704automatically (e.g., without input from the user). For example, themobile device may determine its relative location within the floor plan704 automatically using a real-time locating system. The mobile devicemay use the real-time locating system to determine in which of the rooms710, 712, and 714 it is located. The mobile device may use the real-timelocating system to determine its position within the location.

The mobile device may use image data from a camera of the mobile deviceto determine its location and/or its position within the location. Forexample, the mobile device may compare images captured by the camera toone or more stored images accessible to the mobile device. The storedimages may indicate the rooms in which the stored images were taken. Forexample, the mobile device may capture an image, compare the image to astored image, determine that the image most closely matches a storedimage of room 710, and determine that the mobile device is located inroom 710. The mobile device may traverse rooms 710, 712, and 714 in apre-determined order, and may use information regarding the distancethat the mobile device has traveled to determine its location. Themobile device may use a combination of location detecting methods todetermine its location.

The mobile device may (e.g., autonomously) create a map of the location.The map may be used to determine the presence and/or position of one ormore objects within the location. For example, the objects may bechairs, tables, walls, desks, and/or the like. The mobile device maycompare the positions with the floor plan data to determine itslocation, position (e.g., within the location), and/or orientation. Themobile device may determine the position of one or more light fixtureswithin the location relative to the objects. For example, the mobiledevice may be an autonomous mobile device and may move around the floorof the location. The map may be stored for future use (e.g., by themobile device or another mobile device). The map may be compared to thefloor plan 704 to identify objects in the floor plan 704 and/or updatethe floor plan 704.

The location, position (e.g., within the location), and/or orientationof the mobile device may be determined and may be confirmed by the user.FIG. 8 depicts an example image 808 stored on the mobile deviceincluding the floor plan 704 for determining the location, position(e.g., within the location), and/or orientation of the mobile devicewithin a given location (e.g., at 606 of the method 600 of FIG. 6A). Thefloor plan 704 may include rooms of a building, such as the room 714,for example. The floor plan 704 may include one or more icons, such asicons 804, which may represent the physical locations of lightingfixtures (e.g., lighting fixture B27 in FIG. 8 ). The floor plan 704 mayshow the locations of the lighting fixtures as they relate to oneanother and/or other objects in the space (e.g., the relative positionsof the lighting fixtures). The mobile device and/or the systemcontroller may have stored thereon a floor plan identifier thatindicates the location of one or more of the lighting fixtures in thefloor plan 704.

The location, position (e.g., within the location), and/or orientationof the mobile device relative to the objects in the floor plan 704 maybe determined based on input from the user and/or automatically. Thefloor plan 704 may include a mobile device icon, such as an icon 812,which may indicate the location, position (e.g., within the location),and/or orientation of the mobile device. For example, the user mayselect a direction the mobile device is facing on the floor plan 704.The orientation may be determined automatically (e.g., using a real-timeorientation sensors). For example, the mobile device may use anaccelerometer, a gyroscope, and/or any other sensor for detectingorientation on a mobile device to determine its orientation. Theaccelerometer and/or gyroscope may indicate, for example, that themobile device is facing in an upwards direction. The orientation may bedetermined based on two or more defined portions of the room 714captured in an image by the mobile device.

The mobile device may use a weighted calculation to determine itsorientation. For example, the mobile device may use data from anaccelerometer, a gyroscope, an altimeter, a compass, any other sensorfor detecting orientation on a mobile device, or any combination thereofto determine its orientation. The mobile device may use information froman internal camera to verify its orientation. The mobile device mayautomatically determine the location, position (e.g., within thelocation), and/or orientation without notifying the user.

The determined location, position (e.g., within the location), and/ororientation of the mobile device may be assisted by the user. Forexample, a user may indicate two or more defined portions of the room714 from which the location, position (e.g., within the location),and/or orientation may be determined. The determined location, position(e.g., within the location), and/or orientation may be confirmed by auser pressing the confirm button 802.

FIG. 9 depicts an example image 908 of using two or more objects withina given location (e.g., a room of a building) to determine theorientation of a mobile device within the given location (e.g., at 606of the method 600 of FIG. 6A). The image 908 may represent a frame of avideo generated by the mobile device, for example. The image 908 mayinclude the lighting fixtures within a location, or a subset thereof.

The mobile device may determine its orientation automatically based ontwo or more predetermined objects within the location. The predeterminedobjects may have a fixed position within the location. The mobile devicemay determine its orientation using, for example, the position of thepredetermined objects in relation to each other. The predeterminedobjects may be, for example, corners of a room, windows, lightingfixtures, or a combination thereof.

The user may be prompted to select certain predetermined objects toorient the mobile device within the location on the floor plan. Forexample, the mobile device may select the two corners 910, 912 on thenorth wall of the identified room that meet the ceiling. The user mayselect the corners 910, 912 of the room to determine its orientationwithin the floor plan.

The mobile device may measure the distance between the selected objectsof orientation (e.g., corners 910, 912) and set the distance in theimage 908 equal to the distance indicated between the objects in thefloor plan data. The distance may also be manually entered into themobile device by the user. This distance may be used to calculate therelative size of objects, and distance between objects, in the room ofthe image 908. The mobile device may also, or alternatively, prompt theuser to select two points of a predefined object within the room forwhich the distance is predetermined. For example, the mobile device mayprompt the user to select top and bottom corners of a door, a wall, or aceiling tile having a standard size.

The mobile device may use information of its orientation to determineits position within the floor plan relative to the predetermined objectsin the image 908. The floor plan data may include distances betweenobjects (e.g., walls, lighting fixtures, etc.) within the room. Themobile device may track the size of objects and the distance betweenobjects (e.g., corners, lighting fixtures, etc.) in the image 908 toidentify one or more lighting fixtures. The mobile device may identifylighting fixtures within an image based on the location/orientation ofthe mobile device relative to objects indicated in the floor plan data.For example, the mobile device may identify lighting fixtures within animage based on the location/orientation of the mobile device, the sizeof the lighting fixtures, and/or the distance of the lighting fixturesfrom the selected objects of orientation (e.g., corners 910, 912).

FIG. 10 depicts an example image 1008 identifying one or more lightingfixtures in a given location using floor plan data (e.g., at 608 of themethod 600 of FIG. 6A). The image 1008 may represent a frame of a videogenerated by the mobile device, for example. The image 1008 may includethe lighting fixtures within a location, or a subset thereof. The mobiledevice may identify the lighting fixtures within the location based onthe size and/or location of the lighting fixtures from the points ofreference. The mobile device may determine which of the lightingfixtures indicated in the floor plan data are within the image 1008based on the location of the mobile device, the orientation of themobile device, and the floor plan data indicating the location of thelighting fixtures in the image. The mobile device may identify one ormore fixtures in the image as being fixtures in the floor plan data.

The mobile device may correlate floor plan data with the lightingfixtures in the image 1008. The floor plan data may be stored on amemory of the mobile device and/or received from an external device,such as the system controller, for example. The floor plan data mayidentify floor plan identifiers that correspond with the physicallocation of the lighting fixtures. The floor plan data may include oneor more floor plan identifiers (e.g., one floor plan identifier for eachlighting fixture in the image 1008). The floor plan data may include oneor more icons representing the physical location of the lightingfixtures, representations of connections to other devices (e.g., otherlighting fixtures, switches, sensors, or other devices), groupidentifiers indicating groups of lighting control devices that may becontrolled together, and/or a combination thereof. The floor plan datamay include programming and/or control information for controlling thelighting control devices at identified locations in the floor plan. Theprogramming and/or control information may be uploaded to a systemcontroller for controlling the lighting fixtures.

When the mobile device is used to display information to a user, themobile device may overlay the floor plan data onto the lighting fixturesdisplayed on the image 1008. The mobile device may overlay an outline1010 identifying the lighting fixture in the corresponding location inthe floor plan data. The mobile device may overlay floor plan identifierD2 onto lighting fixture 304. The mobile device may prompt the user toconfirm that the overlaid floor plan data is correct. The mobile devicemay determine that lighting fixture 304 corresponds with floor planidentifier D2 automatically.

The mobile device may receive one or more unique identifiers from theone or more lighting fixtures. A unique identifier may identify alighting control device (not shown) associated with a lighting fixture.For example, the mobile device may receive a separate unique identifierfrom each lighting fixture within the location. A unique identifier maybe used to communicate with a lighting control device activating alighting load of a corresponding lighting fixture 304.

The mobile device may prompt the user to commission the lighting controldevices in the fixtures by pressing a commission button 1002. The mobiledevice may automatically commission the lighting fixtures upon receivingthe unique identifiers. The lighting control devices may be commissionedby associating the floor plan identifiers of the lighting fixtures withthe unique identifiers assigned to the lighting control devices forperforming load control and other communication with the lightingcontrol devices. After selection of the commission button 1002, themobile device may automatically detect the unique identifiers thatcorrespond to the lighting control devices of the lighting fixtures inthe image (e.g., via VLC or RF signals), as described herein.

The unique identifiers may be communicated via VLC signals. The mobiledevice may analyze incoming video or frames of the video to detectunique identifiers indicated by the lighting loads of the lightingfixtures. For example, the mobile device may receive the signal from thelighting load of the lighting fixture 304 and may identify the uniqueidentifier being signaled. The unique identifier of the lighting controldevice may be signaled by blinking the lighting load of the lightingfixture 304 in a pattern, sequence, rate, or the like that correspondsto the unique identifier. The unique identifiers may be sent by thelighting loads of the lighting fixtures and detected by a camera of themobile device at a frequency that is imperceivable to the human eye.

The unique identifiers may be communicated via RF signals. The mobiledevice may receive the RF signals from the lighting control devices anddetermine the unique identifiers based on the received signals. The RFsignals may be, for example, a WI-FI® signal, a BLUETOOTH® signal, anear field communication (NFC) signal, a ZIGBEE® signal, a CLEARCONNECT™ signal, or another RF signal. The mobile device may receiveunique identifiers from more than one lighting control device at thesame time. The mobile device may use, for example, received signalstrength to determine which unique identifier was sent by which lightingcontrol device. For example, the mobile device may determine that theunique identifier associated with the strongest RF signal was receivedfrom the lighting control device that is physically closest to themobile device in the image (e.g., the lighting control device in thelargest lighting fixture). The mobile device may use input from the userto determine which lighting control device is closest to the mobiledevice. For example, the mobile device may prompt the user to select thelighting control device that is closest to the mobile device. The mobiledevice may use information related to its location, position (e.g.,within the location), and/or orientation to determine which lightingcontrol device is closest to the mobile device.

Once the mobile device has received the unique identifiers, the mobiledevice may associate the unique identifiers of the lighting controldevices in the image with the lighting control devices indicated in thecorresponding floor plan data (e.g., at 610 of the method 600 of FIG.6A). For example, the mobile device may make associations between theunique identifiers and the floor plan identifiers.

The mobile device may prompt the user to confirm one or moreassociations (e.g., each association). The mobile device may highlightor otherwise denote lighting fixtures that have been successfullyassociated. The mobile device may indicate that each association hasbeen made correctly. The user may correct an incorrect association madeby the mobile device.

The associations may be stored in a memory of the mobile device. Theassociations may be transmitted by the mobile device to an externaldevice having a memory (e.g., a server, a system controller, etc.) andstored on the external device. Associations may be transmitted to thelighting control devices and stored on memories of the lighting controldevices. The associations may be used to configure and/or control thelighting loads in the lighting control system. For example, informationmay be communicated to and/or from lighting control devices using thefloor plan identifier, or the unique identifier of a device may beidentified for sending a message to a lighting control device having anidentified floor plan identifier. For example, the mobile device 304 orthe system controller may communicate digital messages to the lightingfixture 304 using the unique identifier that is associated with thefloor plan identifier “D4”.

FIG. 11A is a flow diagram depicting an example method 1600 foridentifying and troubleshooting a lighting fixture (e.g., lightingcontrol devices configured to control respective lighting loads of thelighting fixtures). The method 1600 may be performed after the lightingfixture has been installed and/or commissioned. The method 1600 may beperformed on a programming device, such as a mobile device (e.g., themobile device 124 and/or the autonomous mobile devices 126, 128), ordistributed across multiple programming devices, such as a mobiledevice, a system controller, or another device. For example, one or moreportions of the method 1600 may be performed at a system controller thatmay provide information and/or a user interface to the mobile device fortroubleshooting (e.g., via a browser or other application running on themobile device).

The method 1600 may be performed when a lighting fixture is determinedto be functioning improperly (e.g., the lighting fixture does notrespond to a command from a lighting control device in an expectedmanner). The lighting fixture may not function properly for variousreasons. For example, a lighting control device controlling the lightingfixture may be functioning improperly, e.g., it may not be properlyassociated with the lighting fixture and/or may be improperly wired tocontrol the wrong lighting fixture. The lighting control device may failto respond to commands sent from a system controller, may fail torespond to the commands after a delay, may respond to commands fromdevices with which the lighting control device may be improperlyconfigured or associated, and/or may cause the lighting fixture to blinkor turn on or off without input from a user.

The mobile device, a user of the mobile device, and/or the systemcontroller may determine that the lighting fixture is functioningimproperly. The user may determine that the lighting fixture isfunctioning improperly by viewing the lighting fixture. For example, theuser may perceive that the lighting fixture is improperly responding tocommands from a device, or failing to respond to commands from a devicefrom which the lighting fixture is expected to be responsive. The usermay send a command to the lighting control device controlling thelighting fixture (e.g., via the system controller and/or the mobiledevice), and may subsequently determine that the lighting fixture isfunctioning improperly based on the lighting fixture's response to thecommand. The system controller and/or the mobile device may determinethat the lighting fixture is functioning improperly if, for example, thelighting fixture fails to respond to one or more commands, or improperlyresponds to commands from a device that the lighting fixture is notsupposed to respond to. The determination that the lighting fixture isfunctioning improperly may be made during testing of the lightingfixture (e.g., following installation and commissioning), and/or duringnormal operation of the lighting fixture.

The method 1600 may start at 1602. The method 1600 may be initiated bythe user. For example, the user may press a button or otherwise indicateon the mobile device that a lighting fixture is functioning improperly.For example, the lighting fixture may be improperly responding tocommands from a device, or failing to respond to commands from a devicefrom which the lighting fixture is expected to be responsive. At 1604,the mobile device may receive the unique identifier of each lightingcontrol device within a given area and map the lighting control devicesto their locations. For example, the area may be a room in which one ormore lighting fixtures are functioning improperly. The mobile device mayreceive a unique identifier from a lighting control device via VLCsignals (e.g., LiFi) and/or by RF signals (e.g., WI-FI®, BLUETOOTH®,near field communication (NFC), ZIGBEE®, or CLEAR CONNECT™). The mobiledevice may receive the unique identifiers of each lighting controldevice simultaneously or in a given order. The unique identifiers may bethe identifier used to communicate with the lighting control devices.The unique identifiers may be zone identifiers that uniquely identify azone that includes one or more lighting control devices. The lightingcontrol device may additionally and/or alternatively transmit a modelnumber of the lighting control device to the mobile device. For example,the model number may indicate that the control device in a specificfixture is an LTE-series driver. The mobile device may map the lightingcontrol devices to their functions and/or locations based on input fromthe user. For example, the mobile device may prompt the user to enter alocation and/or a function for each lighting control device.Alternatively, the mobile device may map the functions and/or locationsof the lighting control devices based on a floor plan. The floor planmay include one or more floor plan lighting fixtures, each of which maycorrespond to a lighting fixture in the given area. The floor plan mayinclude floor plan data, such as placement of the lighting controldevices on the floorplan and model numbers for each of the lightingcontrol devices, for example. For example, the floor plan data mayadditionally include associations between each floor plan lightingfixture and an expected unique identifier for the lighting controldevice controlling the lighting fixture corresponding to the floor planlighting fixture. The floor plan data may include information about thefunction of each lighting fixture. For example, the floor plan data mayindicate whether a given lighting fixture is used for accent lighting,ambient lighting, and/or the like. The floor plan data may indicatewhether a lighting fixture is dimmable, whether the lighting fixture isa low-end intensity (e.g., the lighting fixture is a 1% lightingfixture), the color-changing ability of the lighting fixture (e.g., fullcolor adjustment and/or color temperature control), any control devices(e.g., occupancy sensors, daylight sensors, remote controls, and/or thelike) that are controlling the lighting fixture, and/or whether thelighting fixture is an emergency fixture (e.g., whether the lightingfixture will remain on if power to the building is lost).

At 1606, a discrepancy between an identifier received from theimproperly-functioning lighting fixture and an expected identifier forthe lighting control device controlling the lighting fixture may beidentified. The mobile device may determine an expected identifier for alighting control device based on the floor plan data. For example, theidentifier may be the unique identifier, and/or the identifier mayinclude the model number of the lighting control device. The mobiledevice may receive the unique identifier of a lighting control devicecontrolling lighting fixture “Downlight 1”. The mobile device maydetermine that “Downlight 1” is located in room 101 of a building (e.g.,as described herein). The mobile device may determine that there is afloor plan lighting fixture corresponding to “Downlight 1” in the floorplan data based on the location of “Downlight 1”. The mobile device maydetermine that the expected unique identifier for the lighting controldevice controlling “Downlight 1” is the unique identifier associatedwith the floor plan lighting fixture corresponding to “Downlight 1.” Forexample, the mobile device may determine that the unique identifier forthe floor plan lighting fixture corresponding to “Downlight 1” is“XYZ789,” and may determine that the expected unique identifier for thelighting control device controlling “Downlight 1” is “XYZ789.”

The mobile device may automatically (e.g., without input from the user)identify the discrepancy between the expected identifier and the actualidentifier of the lighting control device. The mobile device mayidentify the discrepancy based on a comparison between the receivedidentifier and the expected identifier. For example, the mobile devicemay receive the unique identifier “ABC123” from animproperly-functioning lighting fixture, determine that the expectedunique identifier for that lighting fixture is “XYZ789”, and identify adiscrepancy based on the received and expected unique identifiers.According to a second example, the mobile device may determine that themodel number of the lighting control device does not match the expectedmodel number corresponding to the fixture shown on the overlaidfloorplan on the mobile device display.

The mobile device may identify the discrepancy based on input from theuser. For example, the mobile device may prompt the user to enter theexpected identifier for a lighting control device, and may compare theexpected identifier to the unique identifier received from the lightingfixture being controlled by the lighting control device. For example,the user may determine the expected unique identifier from the floorplan, and enter the expected unique identifier. In addition, the usermay indicate the location of the lighting fixture in the floor plan dataon the mobile device. For example, the mobile device may display thefloor plan data and prompt the user to select the corresponding floorplan lighting fixture, and the mobile device may determine the expectedunique identifier based on the selected lighting fixture.

At 1608, the user may be alerted to the discrepancy between the receivedunique identifier and the expected unique identifier. The user may bealerted by the mobile device, the system controller, the lightingcontrol device, a separate programming device, or some combinationthereof. For example, the mobile device may cause the lighting controldevice to blink the lighting fixture in a pre-determined pattern toalert the user. The mobile device may (e.g., upon receipt of the digitalmessage) send a notification to the user. The mobile device may send thenotification to the user by, for example, vibrating, flashing orblinking a light, displaying text on the screen, playing a sound, and/orthe like. The mobile device, system controller, and/or the lightingcontrol device may alert the user by sending a digital message to aseparate programming device, which may then send a notification to theuser. For example, the system controller may send an email to the userinforming the user of the discrepancy. The alert may include the floorplan identifier, the expected identifier, and/or the actual identifierof the lighting control device at the location of the floor planidentifier. The mobile device may prompt the user to acknowledge thealert.

At 1610, the discrepancy between the received identifier and theexpected identifier may be resolved. For example, the floor plan datamay be updated. The identifier (e.g., the unique identifier and/or themodel number) in the floor plan for the lighting fixture correspondingto the improperly-functioning lighting fixture (e.g., the expectedidentifier) may be changed to match the received identifier of thelighting fixture (e.g., the unique identifier of the lighting controldevice of the lighting fixture in the space), such that the floorplan(e.g., blueprint) accurately represents what controls are installed inthe space. For example, if the received unique identifier is “ABC123”and the expected unique identifier is “XYZ789,” the expected uniqueidentifier may be changed to “ABC123.” Alternatively, the identifier ofthe lighting control device controlling the improperly-functioninglighting fixture may be changed (e.g., in memory of the lighting controldevice, the system controller, and/or other devices in the system) tomatch the expected lighting fixture identifier (e.g., the uniqueidentifier in the floor plan for the lighting fixture corresponding tothe improperly-functioning lighting fixture). For example, if thereceived unique identifier is “ABC123” and the expected uniqueidentifier is “XYZ789,” the unique identifier of the lighting controldevice controlling the improperly-functioning lighting fixture may bechanged to “XYZ789.” Alternatively, the user may change out the lightingcontrol device so that the model number of the lighting control devicematches the model number of the floorplan (e.g., when an incorrectproduct has been installed).

The mobile device may resolve the discrepancy based on input from theuser. For example, the mobile device may prompt the user to selectwhether to change the received unique identifier (e.g., change theunique identifier of the lighting control device of the lightingfixture) or the expected unique identifier (e.g., change the uniqueidentifier for the lighting fixture in the floor plan data). The mobiledevice may then change the selected unique identifier to match thenon-selected unique identifier. The mobile device may prompt the user toenter another unique identifier (e.g., other than the expected orreceived unique identifier) for the lighting control device, and maythen update both the expected unique identifier and the received uniqueidentifier to match the unique identifier entered by the user. Forexample, the user may enter the unique identifier “MNO654.” The mobiledevice may update the floor plan data to reflect the new uniqueidentifier, and may send a digital message to the lighting controldevice (e.g., via the system controller), the system controller, and/orother devices in the system to inform the devices of the uniqueidentifier for being stored thereon.

The mobile device may resolve the discrepancy without input from theuser. For example, the mobile device may automatically select thereceived unique identifier or the expected unique identifier, and updatethe selected unique identifier. The method 1600 may end at 1612.

FIG. 11B is a flow diagram depicting an example method 2900 foridentifying and troubleshooting a lighting fixture or lighting controldevice. The method 2900 may be performed on a programming device, suchas a mobile device (e.g., the mobile device 124 and/or the autonomousmobile devices 126, 128), or distributed across multiple programmingdevices, such as a mobile device, a system controller, control devices,and/or other devices. The method 2900 may begin at 2902. At 2904, anapplication may be launched on the mobile device. The application maybe, for example, an application for use in installing, commissioning,troubleshooting, and/or controlling one or more control devices (e.g.,lighting fixtures, lighting control devices, and/or other types ofcontrol devices). At 2906, a job and/or area of work may be selected.The selected job and/or area of work may be authenticated by a server.That is, the application and/or a user may provide credentials to accessthe specific job and any associated floorplans/blueprints or otherinformation about the job or area.

At 2908, the mobile device (e.g., the application) may determine itsorientation. The orientation may be determined automatically (e.g.,using a real-time orientation sensors). For example, the mobile devicemay use an accelerometer, an altimeter, a gyroscope, and/or any othersensor for detecting orientation on a mobile device to determine itsorientation. The accelerometer and/or gyroscope may indicate, forexample, that the mobile device is facing in an upwards direction. Theorientation may be determined based on two or more defined portions of aroom captured in an image by the mobile device.

At 2910, the mobile device may overlay a reflected floor plan onto animage displayed on a display of the mobile device. The image may betaken by an internal camera of the mobile device. For example, theapplication may use a front or rear-facing camera of the mobile deviceto display a map, e.g., a live video feed of the ceiling of the spacewith the floorplan overlaid on the video feed image, as shown anddescribed in FIG. 12 . At 2912, the mobile device (e.g., a user of themobile device) may move around the job space, following the mapdisplayed on the mobile device. At 2914, an improperly-functioning(e.g., not functioning as expected) control device in the job space maybe identified (e.g., by the user and/or by the mobile device). Forexample, if the control device is a lighting fixture (e.g., a lightingcontrol device controlling the lighting fixture), the lighting fixturemay be flickering and/or have one or more burnt out bulbs. At 2916, theimproperly-functioning control device may be selected (e.g., by theuser) on the reflected floor plan displayed on the mobile device. At2918, the mobile device may send a serial ID (e.g., a unique identifier)of the improperly-functioning control device and/or a troubleshootingcommand to the system controller. At 2920, the system controller mayidentify the improperly-functioning control device and may transmit tothe improperly-functioning control device a message (e.g., a messagequerying for the status of the improperly-functioning control device).At 2922, the improperly-functioning control device may run onboarddiagnostics and may send a diagnostic report to the processor (e.g., inresponse to receiving the message querying for the status of theimproperly-functioning control device). At 2924, the processor maydiagnose an issue with the improperly-functioning control device basedon the diagnostic report and may relay the diagnostic report to themobile device. For example, the processor may determine that one or morelamps of a fixture are off, and may determine that the lamp is faulty orhas burned out and may be in need of replacement. At 2926, the mobiledevice may display a dialog box detailing the issue and/or repairoptions. At 2928, the issue may be repaired (e.g., by the user). Themethod 2900 may end at 2930.

FIG. 11C is a flow diagram depicting an example method 3300 forconfiguring (e.g., reconfiguring) a control device via a mobile device.The method 3300 may be performed after the control device has beeninstalled and/or commissioned. The method 3300 may be performed on aprogramming device, such as a mobile device (e.g., the mobile device 124and/or the autonomous mobile devices 126, 128), or distributed acrossmultiple programming devices, such as a mobile device, a systemcontroller, control devices, and/or other devices. For example, one ormore portions of the method 3300 may be performed at a system controllerthat may provide information and/or a user interface to the mobiledevice (e.g., via a browser or other application running on the mobiledevice) and/or a control device for configuring the control device. Forexample, the method 3300 may be performed when a lighting fixture isdetermined to be functioning improperly (e.g., the lighting fixture ismalfunctioning) and the lighting control device controlling the lightingfixture needs to be reconfigured in order to operate properly.

The method 3300 may be performed when a user of the mobile devicedetermines to configure (e.g., reconfigure) one or more control deviceswithin a given area. The area may be, for example, a room of a building.A control device may be, for example, a lighting fixture, a dimmerswitch, an electronic switch, an electronic lighting control device forlamps, an LED driver for LED light sources or other lighting controldevice, an AC plug-in load control device, a temperature control device(e.g., a thermostat), a motor drive unit for a motorized windowtreatment, or another control device. The method 3300 may be performedsimultaneously for multiple control devices or in sequential order. Forexample, the user may control the brightness of multiple lightingfixtures at the same time.

The method 3300 may begin at 3302. At 3304, the mobile device mayidentify one or more control devices within view of the mobile device.For example, the mobile device may have an internal camera, and mayidentify each device within view of the internal camera. The mobiledevice may display an image including the control devices on a displayof the mobile device. The mobile device may identify the control devicesbased on input from the user. The mobile device may prompt the user toenter a location and/or establish an orientation of the mobile device,as described herein.

The mobile device may have access to a floor plan that includes floorplan data. The floor plan data may include information regarding thelocation of each control device. The mobile device may use the floorplan data to identify the control devices in the area. The floor plandata may include information about one or more floor plan controldevices, each corresponding to a control device in the area in which themobile device is located. For example, the floor plan data may include alocation, function, unique identifier, floor plan identifier, or typefor each floor plan control device. The floor plan data may indicateconnections between two or more floor plan control devices. A connection(e.g., association or link) between two control devices (e.g., theremote control device and the lighting control device) may be wired orwireless. A connection may be made between two or more control devicesat installation and/or commissioning of the control devices or duringnormal operation of the control devices. For example, the user maycreate a connection between two control devices by associating the twocontrol devices and storing the association in local memory and/or aremote server. The user may create a connection between the controldevices by wiring the devices together at installation. The mobiledevice may determine its location and orientation and determine whichcontrol devices are at the determined location using the floor plandata. The mobile device may identify the control devices in view of themobile device based on the mobile device's orientation as describedherein.

The mobile device may identify the control devices automatically (e.g.,without input from the user). The mobile device may identify the controldevices by determining a location and orientation of the mobile device(e.g., as described herein). For example, the mobile device maydetermine the location of the mobile device using a real-time locatingsystem executed on the mobile device (e.g., GPS, triangulation, NFC,geolocation, etc.). The mobile device may determine the orientation ofthe mobile device using one or more of an internal compass, gyroscope,accelerometer, and/or any other sensor for detecting orientation on amobile device. The mobile device may receive a unique identifier fromeach control device within the area (e.g., as described herein). Forexample, the unique identifiers may be communicated via RF signalsand/or via VLC signals (e.g., LiFi). The RF signals may be, for example,a WI-FI® signal, a BLUETOOTH® signal, a near field communication (NFC)signal, a ZIGBEE® signal, a CLEAR CONNECT™ signal, or another RF signal.The mobile device may receive the unique identifiers from the controldevices and determine the unique identifiers based on the receivedsignals. The mobile device may determine a floor plan identifier foreach control device based on the unique identifiers and the floor plandata. For example, the floor plan data may include, for each controldevice, an association between a unique identifier and a floor planidentifier. The mobile device may overlay the floor plan identifiersonto the respective control devices on the display of the mobile device.The mobile device may prompt the user to confirm that the displayedfloor plan identifiers are correct.

At 3306, one or more of the identified control devices may be selectedto be configured (e.g., reconfigured). An individual control device,multiple control devices, a predetermined group of control devices, oreach control device within the area may be selected. For example, in anarea including multiple lighting fixtures, one lighting fixture, asubset of the lighting fixtures, or each lighting fixture within thearea may be selected. The predetermined groups may be determined basedon, for example, user input, type or function of a control device,location of the control device, and/or the like. For example, a firstgroup may include each motorized treatment in a room, and a second groupmay contain each lighting fixture on the left side of the room. Anindication of the control devices selected for configuration may beoverlaid over the image and/or video of the control devices, such thatthe user may identify the selected devices. For example, the indicatormay be a color, symbol, or other identifier that is overlaid on, oradjacent to, the selected control device(s).

One or more control devices may be selected based on user input. Forexample, the mobile device may prompt the user to select one or morecontrol devices on the display of the mobile device. For example, theuser may select one or more of the lighting fixtures or zones oflighting fixtures indicated as being recognized on the display of themobile device (e.g., by the overlaid indicators identifying lightingfixtures). The mobile device may prompt a user to select one or moresettings of the controls being overlaid on the display of the mobiledevice. The settings may include, for example, a high-end trim (e.g., amaximum intensity), a low-end trim (e.g., a minimum intensity), apresent intensity, a fade rate, a turn-off delay time, a colortemperature range, an occupancy/vacancy mode, an occupancy sensitivitysetting, a daylighting threshold, etc. For example, the user may selecta high-end trim setting on the display of the mobile device, and themobile device may select one or more lighting fixtures and/or motorizedwindow treatments to be configured (e.g., to have the high-end trimadjusted).

At 3308, the selected device may be configured via the display of themobile device. The mobile device may prompt the user to select and/orenter a setting based on the selected control device(s). The mobiledevice may prompt the user to enter the setting via a slider, a switch,a text box, and/or the like. The mobile device may display a popupwindow or other information on the display of the mobile device. Thepopup window may be overlaid over the image and/or video of the roombeing displayed from the camera of the mobile device. The user may entera value for the setting into the popup window. For example, an occupancysensitivity setting may be selected for configuration. The mobile devicemay display a popup window prompting the user to adjust the occupancysensitivity in the popup window. If multiple control devices areselected for configuration, the mobile device may display a single popupwindow or multiple popup windows (e.g., one for each selected controldevice). If a single popup window is displayed, the mobile device mayprompt the user to enter a single setting or multiple settings (e.g.,one for each selected control device). For example, the user may selectfour lighting fixtures for configuration. The mobile device may displaya single popup window and prompt the user to enter four settings (e.g.,one for each of the four lighting fixtures) or one command (e.g., foreach of the four lighting fixtures).

After the user has entered the value of the setting, the mobile devicemay transmit configuration data including the value of the setting tothe control device(s). The configuration data may be sent as one or moredigital messages (e.g., as a series of digital messages). The mobiledevice may send the configuration data via, for example, an RF signal(e.g., a WI-FI® signal, a BLUETOOTH® signal, a near field communication(NFC) signal, a ZIGBEE® signal, a CLEAR CONNECT™ signal, or another RFsignal). The mobile device may send the configuration data to thecontrol device(s) directly and/or via a separate device (e.g., a systemcontroller). The control device(s) may send a response message to themobile device (e.g., via a system controller) after receiving theconfiguration data. The response message may include an acknowledgementand/or the status of the control device(s). The updated value of thesetting of the control device(s) may be overlaid on top of the imagesand/or video being displayed from the camera to present theconfiguration data of the control device(s) in view. The method 3300 mayend at 3310.

FIG. 12 depicts a representative image 1708 that may be displayed on amobile device to troubleshoot one or more lighting fixtures (e.g.,lighting control devices controlling the respective lighting fixtures)that are functioning improperly. The image 1708 may represent a frame ofa video generated by the mobile device, for example. The image 1708 maybe similar to the image 1008 displayed in FIG. 10 . The image 1708 mayinclude the lighting fixtures within a location, or a subset thereof.The image 1708 may display one or more lighting fixtures within alocation and/or information associated with the lighting fixtures. Forexample, image 1708 may display lighting fixture 304, outline 1010identifying the lighting fixture 304, and floor plan identifier D2identifying lighting fixture 304. The mobile device may overlay anoutline surrounding each lighting fixture and/or a floor plan identifierfor each lighting fixture onto image 1708. Outline 1010 and/or floorplan identifier D2 may be overlaid onto the image 1708 by the mobiledevice.

The mobile device may overlay one or more objects (e.g., lines, arrows,symbols, etc.) onto an image (e.g., the image 1708). The mobile devicemay determine to overlay the objects onto the image based on thelocation/orientation of the mobile device and/or floor plan dataaccessible to the mobile device. The floor plan data may indicateinformation about one or more floor plan control devices. For example,the floor plan data may indicate a location, floor plan identifier,unique identifier, function, type, and/or the like for each floor plancontrol device.

The mobile device may determine its location and/or orientation asdescribed herein. The mobile device may be located within an area (e.g.,a room of a building). The mobile device may view the area, for exampleusing an internal camera of the mobile device, and may generate an imageof the area (e.g., the image 1708). The mobile device may identify thatone or more control devices are present within the image, for exampleusing imaging analysis. The mobile device may determine an approximatelocation (e.g., absolute or relative to the mobile device) of eachcontrol device in the image using one or more techniques describedherein.

The mobile device may identify the control devices in the image based onthe floor plan data. For example, the floor plan data may include acorresponding floor plan control device for each control device presentin the area in which the mobile device is located. The floor plan datamay indicate a location (e.g., a relative location and/or an absolutelocation) for each floor plan control device. The mobile device mayidentify a control device based on the mobile device'slocation/orientation and/or the floor plan data. The mobile device maydetermine that a floor plan control device is indicated as being at alocation that is within a threshold distance of the location of a givencontrol device within the image. For example, the mobile device maydetermine that the floor plan control device indicated as being at thesame location as the given control device. The mobile device maydetermine that the given control device corresponds to the floor plancontrol device. After the mobile device has identified a control device,the mobile device may information from the floor plan data (e.g., anoutline and/or floor plan identifier) onto each control device in theimage.

The image 1708 may be displayed on the mobile device after the lightingfixtures have been commissioned. The lighting fixtures may becommissioned as described herein. The image 1708 may be displayed on themobile device after it has been determined that one or more of thelighting fixtures is functioning improperly (e.g., at 1604 of the method1600 of FIG. 10A). A user of the mobile device may indicate that alighting fixture is functioning improperly. The mobile device, a systemcontroller, and/or any other programming device may detect that thelighting fixture is functioning improperly. The mobile device may alertthe user of the improperly functioning lighting fixture by, for example,vibrating, flashing or blinking a light, displaying text on a displayscreen, playing a sound, and/or the like. The mobile device may promptthe user to troubleshoot the lighting control devices in the fixtures bypressing a troubleshoot button 1702. Alternatively, the mobile devicemay automatically (e.g., without input from the user) troubleshoot theimproperly-functioning lighting fixture.

FIG. 13 depicts a representative image 1808 that may be displayed on amobile device to identify an improperly-functioning lighting fixture(e.g., at 1606 of the method 1600 of FIG. 11A). The image 1808 mayrepresent a frame of a video generated by the mobile device, forexample. The image 1808 may display one or more lighting fixtures withina location and/or information associated with the lighting fixtures. Forexample, image 1808 may display lighting fixture 304, outline 1010 fromthe floor plan overlay, and floor plan identifier D2 identifyinglighting fixture 304. As described herein, the mobile device may overlayan outline surrounding each lighting fixture and/or a floor planidentifier for each lighting fixture onto image 1808. For example,outline 1010 and/or floor plan identifier D2 may be overlaid onto theimage 1808 by the mobile device.

The mobile device may determine that lighting fixture 304 is functioningimproperly based on an indication from the user. For example, the mobiledevice may prompt the user to select which lighting fixture isfunctioning improperly, and the user may select lighting fixture 304 onthe display of the mobile device. The mobile device may determine thatlighting fixture 304 is functioning improperly based on informationreceived from the system controller, the lighting control device (notshown) controlling lighting fixture 304, and/or any other programmingdevice. For example, the system controller or the mobile device maydetect that lighting fixture 304 is functioning improperly by failing torespond to messages sent to the lighting fixture 304 using the uniqueidentifier 304 of the lighting control device, or inappropriatelyresponds to messages intended for other lighting control devices, andmay send a digital message to the mobile device indicating that lightingfixture 304 is functioning improperly.

The mobile device may determine that lighting fixture 304 is functioningimproperly based on information received from a lighting control devicewhich controls lighting fixture 304. The mobile device may receive aunique identifier that identifies the lighting control device from thelighting control device. The lighting control device may transmit theunique identifier via, for example, VLC signal (e.g., LiFi) and/or an RFsignal. The mobile device may determine that lighting fixture 304 isfunctioning improperly if the unique identifier (e.g., serial numberand/or model number) received from the lighting control device does notmatch an expected unique identifier for the lighting control device(e.g., there is a discrepancy between the expected unique identifier andthe received unique identifier). The mobile device may determine theexpected unique identifier based on floor plan data. For example, theexpected unique identifier may be a unique identifier for a floor planlighting fixture that corresponds to lighting fixture 304.

The image 1808 may indicate the improperly-functioning lighting fixture304 on the display of the mobile device. For example, as shown in FIG.13 , the mobile device may overlay a symbol 1806 or other indicator thatindicates the lighting control device is improperly functioning onto thelighting fixture 304 in the image 1808. For example, the symbol 1806 maybe a no symbol, a letter (e.g., X), a number, a given color (e.g., red),and/or any other symbol or indicator that indicates that the lightingcontrol device is functioning improperly. The outline 1010 may change toindicate that the lighting control device is functioning improperly. Forexample, the outline 1010 may turn a given color (e.g., red), blink,and/or become animated. The image 1808 may also indicate one or morelighting fixtures that are functioning properly. For example, as shownin FIG. 10C, the mobile device may overlay a symbol 1802 or otherindicator that indicates the lighting control device is improperlyfunctioning over each properly functioning lighting fixture D1, D3-D9displayed in the image 1808. For example, the symbol 1802 may be acheckmark, a letter, a number, a given color (e.g., green), and/or anyother symbol or indicator that indicates that the lighting controldevice is functioning properly. The mobile device may shade theimproperly-functioning lighting fixture 304 in a first color (e.g., red)and shade the properly functioning lighting fixtures in a second color(e.g., green).

FIG. 14A depicts a representative image that may be displayed on amobile device to resolve a discrepancy between a received uniqueidentifier for a lighting fixture and an expected unique identifier forthe lighting fixture (e.g., at 1610 of the method 1600 of FIG. 11A). Themobile device may determine that the unique identifier of the lightingcontrol device controlling the improperly-functioning lighting fixturedoes not match the unique identifier of the corresponding floor planlighting fixture. For example, the mobile device may determine that theunique identifier of the lighting control device controlling lightingfixture 304 is “ABC123,” while the unique identifier of the floor planlighting fixture corresponding to lighting fixture 304 is “DEF456.” Themobile device may determine the unique identifier of the lightingcontrol device controlling the improperly-functioning lighting fixtureas described herein.

The mobile device may display the received unique identifier and theexpected unique identifier in popup window 1910 (e.g., at 1608 of themethod 1600 of FIG. 11A). The mobile device may overlay popup window1910 onto image 1908. For example, the mobile device may display theunique identifier of the floor plan lighting fixture corresponding tolighting fixture 304 (e.g., the expected unique identifier) and theunique identifier of the lighting control device controlling lightingfixture 304 (e.g., the received unique identifier). The popup window1910 may include a resolve button 1912. The user may press the resolvebutton 1912 in order to resolve the discrepancy between the receivedunique identifier and the expected unique identifier (e.g., at 1610 ofthe method 1600 of FIG. 11A). For example, the mobile device may updatethe unique identifier of the floor plan lighting fixture correspondingto light fixture 304 such that it matches the unique identifier of thelighting control device controlling the improperly-functioning lightingfixture. The mobile device may display a message (not shown) orotherwise indicate to the user that the discrepancy has been resolved.For example, the mobile device may cause (e.g., via the systemcontroller) the light fixture 304 to blink in a given color (e.g.,green). The mobile device may prompt the user to test and/or confirmthat the discrepancy has been resolved. For example, the mobile devicemay prompt the user to send a command to the light fixture 304 and mayprompt the user to confirm that the light fixture 304 respondedcorrectly.

FIG. 14B depicts a representative image 1958 that may be displayed on amobile device (e.g., the mobile device 124 and/or the autonomous mobiledevices 126, 128) to reconfigure and/or troubleshoot a control device(e.g., an improperly-functioning control device). For example, thecontrol device may be a lighting fixture, lighting control device,and/or any other type of control device. The image 1958 may represent aframe of a video generated by the mobile device, for example. The image1958 may display one or more lighting fixtures within a location and/orinformation associated with the lighting fixtures. For example, theimage 1958 may display lighting fixture 304, outline 1010 identifyingthe lighting fixture 304, and/or floor plan identifier D2 identifyinglighting fixture 304. Outline 1010 and/or floor plan identifier D2 maybe overlaid onto the image 1958 by the mobile device.

The image 1958 may be displayed on the mobile device after the mobiledevice has determined the location/orientation of the mobile deviceand/or identified the control devices in view of the mobile device, asdescribed herein. For example, the mobile device may determine thelocation and/or orientation of the mobile device using a real-timelocating system executed on the mobile device. The mobile device mayidentify the control devices in view of the mobile device based on thelocation/orientation of the mobile device and floor plan data accessibleto the mobile device.

The image 1958 may be displayed on the mobile device after a user of themobile device has indicated that a control device (e.g., lightingfixture 304) to reconfigure and/or troubleshoot (e.g., a control devicethat is functioning improperly). For example, the control device may befailing to respond to commands sent to the control device (e.g., alighting control device controlling a lighting fixture) and/orimproperly respond to commands sent to the control device. The user maydetermine that the control device is functioning improperly by viewingthe control device. For example, if the control device is a lightingfixture, the user may perceive that the lighting fixture is blinking,flashing, failing to respond to commands, is too bright, or otherwisefunctioning improperly. The user may indicate the control device byselecting the control device in the image 1958. For example, to selectlighting fixture 304 (e.g., to indicate that lighting fixture 304 isfunctioning improperly), the user may press within the area formed byoutline 1010 on the display of the mobile device.

The image 1958 may include information about the improperly-functioningcontrol device. For example, as shown in FIG. 14B, the image 1958 mayinclude a popup window 1950. The popup window 1950 may display the type,function, floor plan identifier, unique identifier, or any otherinformation for the control device. For example, as shown in FIG. 14B,the popup window 1950 may display the floor plan identifier D2 forlighting fixture 304. The popup window 1950 may include one or morebuttons that the user may actuate in order to perform one or moreactions related to the improperly-functioning control device. Forexample, as shown in FIG. 14B, the popup window 1950 may include buttons1954, 1956, and/or 1960. The user may actuate the button 1954 in orderto adjust the control device as a high-end trim (e.g., a maximumintensity) or a low-end trim (e.g., a minimum intensity) of one or moreof the lighting fixtures.

The user may actuate the button 1956 in order to adjust theconfiguration of the control device. For example, actuating the button1956 may cause the popup window 1950 to display one or more settingsassociated with the lighting fixture 304. The settings may include, forexample, a high-end trim, a low-end trim, a present intensity, a faderate, a turn-off delay time, a color temperature range, anoccupancy/vacancy mode, an occupancy sensitivity setting, a daylightingthreshold, etc. For example, the user may actuate the button 1956 toconfigure the lighting fixture 304, and modify the occupancy sensitivitysetting for the lighting fixture 304 from “High” to “Low.”

One or more types of control devices may be configured. For example, atemperature control device may be selected for configuration. The mobiledevice may display a popup window prompting the user to enter atemperature in the popup window. If multiple control devices areselected for configuration, the mobile device may display a single popupwindow or multiple popup windows (e.g., one for each selected controldevice). If a single popup window is displayed, the mobile device mayprompt the user to enter a single command or multiple commands (e.g.,one for each selected control device). For example, the user may selectfour lighting fixtures for configuration. The mobile device may displaya single popup window and prompt the user to enter four commands (e.g.,one for each of the four lighting fixtures) or one command (e.g., foreach of the four lighting fixtures).

The user may actuate the button 1960 in order to troubleshoot thelighting fixture 304 (e.g., if the lighting fixture is operatingimproperly). For example, actuating the button 1960 may cause thelighting fixture 304 (e.g., a lighting control device controllinglighting fixture 304) to run a diagnostics program. For example, thediagnostics program may include providing one or more predefinedcommands to the lighting fixture 304 and determining responses of thelighting fixture 304 to the predefined commands. The lighting fixture304 may diagnose one or more issues based on the results of thediagnostics program. For example, the lighting fixture 304 may determinethat one or more components of the lighting fixture 304 (e.g., an LEDbulb) are not functioning properly. The lighting fixture 304 may sendthe results of the diagnostic program and/or information about thediagnosed issues to the mobile device and/or a system controller asdescribed herein. The popup window 1950 may display the results of thediagnostic program and/or the information about the diagnosed issues.The popup window 1950 may display one or more recommendations fortroubleshooting the diagnosed issue. The mobile device may prompt theuser to resolve the diagnosed issue.

The popup window 1950 may include a scroll bar 1952. The user may usethe scroll bar 1952 to view one or more buttons (not shown) in additionto buttons 1954, 1956, and 1960. For example, the user may use thescroll bar 1952 to view a button (not shown) labeled “Add Remote ControlDevice” that, when actuated, may allow the user to associate a controldevice with the lighting fixture 304.

FIG. 15 is a flow diagram depicting an example method 2000 foridentifying and troubleshooting a control device (e.g., a lightingcontrol device configured to control a lighting load of a lightingfixture). The method 2000 may be performed after the control device hasbeen installed and/or commissioned. The method 2000 may be performed ona programming device, such as a mobile device (e.g., the mobile device124 and/or the autonomous mobile devices 126, 128), or distributedacross multiple programming devices, such as a mobile device, a systemcontroller, and/or another device. For example, one or more portions ofthe method 2000 may be performed at a system controller that may provideinformation and/or a user interface to the mobile device fortroubleshooting (e.g., via a browser or other application running on themobile device).

The method 2000 may be performed when a control device (e.g., a lightingfixture, lighting control device, load control device, or control-targetdevice) is determined to be functioning improperly (e.g., the controldevice is malfunctioning). For example, a lighting control devicecontrolling a lighting fixture may be functioning improperly. Thecontrol device may fail to respond to commands sent from a systemcontroller or a control-target device (e.g., via the system controller),may fail to respond to the commands after a delay, and/or may cause thelighting fixture to blink or turn on or off without input from a user.For example, a lighting fixture may fail to change in intensity when abutton of a remote control device is activated.

The mobile device, a user of the mobile device, the system controller,and/or the control device may determine that the lighting fixture isfunctioning improperly. The user may determine that the control deviceis functioning improperly by viewing the control device. For example,the user may perceive that a motorized window treatment is failing torespond to commands or that a lighting fixture is blinking, flashing,failing to respond to commands, or otherwise functioning improperly. Theuser may send a command to the control device (e.g., via the systemcontroller and/or the mobile device), and may determine that the controldevice is functioning improperly based on the control device's responseto the command. The system controller and/or the mobile device maydetermine that the control device is functioning improperly if, forexample, the control device fails to respond to one or more commands.The control device may determine that it is functioning improperly if,for example, the control device fails to receive commands from thesystem controller or receives contradictory commands. The determinationthat the control device is functioning improperly may be made duringtesting of the control device (e.g., following installation and/orcommissioning), and/or during normal operation of the control device.

The method 2000 may start at 2002. The method 2000 may be initiated bythe user. For example, the user may press a button or otherwise indicateon the mobile device that a control device is functioning improperly. At2004, the mobile device may determine connections for each controldevice (e.g., each lighting control device, lighting fixture,control-target device, and/or load control device) within a given area.For example, the area may be a room in which one or more control devicesare functioning improperly. A load control device (e.g., acontrol-target device) may be, for example, a dimmer switch, anelectronic switch, an electronic lighting control device for lamps, anLED driver for LED light sources or other lighting control device, an ACplug-in load control device, a temperature control device (e.g., athermostat), a motor drive unit for a motorized window treatment, orother load control device.

Each control device (e.g., each lighting control device, lightingfixture, control-target device, and/or load control device) within thearea may be connected to (e.g., associated with or linked to) one ormore other control devices within the area. For example, a firstlighting fixture may be connected to a lighting control device and asecond lighting fixture. The second fixture may be connected to thefirst lighting fixture and the lighting control device (e.g., via thefirst lighting fixture). The lighting control device may control theintensity of the first lighting fixture and/or the second lightingfixture. For example, an occupant of the area may adjust the intensityof the first lighting fixture and the second lighting fixture byactuating a raise button and/or a lower button on a remote controldevice.

The mobile device may determine the actual connections between thecontrol devices based on actual connection data. The mobile device maydetermine the actual connections prior to beginning troubleshooting. Forexample, the mobile device may determine the actual connections based oninput from the user during installation of the control devices. Forexample, at installation of each control device, the mobile device mayprompt the user to enter other control devices that are connected to thecontrol device. The mobile device may prompt the user to enter one ormore connections (e.g., associations) between the control devices afterinstallation but prior to commissioning of the control devices. Themobile device may store the connections locally or at a remote server.

The mobile device may determine the actual connections based oninformation received from the control devices. Each control device maysend, to the mobile device, information about the control device'sconnections to other control devices. The mobile device may receiveinformation from a control device via VLC signals (e.g., LiFi) and/or byRF signals (e.g., WI-FI®, BLUETOOTH®, near field communication (NFC),ZIGBEE®, or CLEAR CONNECT™). The information about the control device'sconnections may include one or more unique identifiers, associations,and/or the like. For example, a control device may send a uniqueidentifier that identifies the control device to the mobile device, inaddition to an indication that the control device is connected to asecond control device within the area. The mobile device may retrievepreviously-stored associations from local memory or the remote serverprior to beginning troubleshooting and/or during troubleshooting.

Each control device may send, to the mobile device, a unique identifierof each control device to which the given control device is connected.For example, for a given control device, the mobile device may receive aunique identifier that identifies the control device. For example, alighting fixture may be connected to load control device. The loadcontrol device may send (e.g., via the lighting fixture that the loadcontrol device is controlling) its unique identifier to the mobiledevice. The mobile device may receive the unique identifierssimultaneously or in a given order.

The actual connections may include direct connections and/or indirectconnections. For example, a first lighting fixture may be directlyconnected to a second lighting fixture. The second lighting fixture maybe connected to a third lighting fixture. Each control device may send,to the mobile device, information about the control device's directconnections and/or indirect connections. The actual connections for acontrol device may be determined by sending the control device a command(e.g., via a system controller) and measuring a response of the controldevice and/or other control devices to the command. For example, themobile device may send a command to a load control device to adjust theintensity of each lighting fixture connected to the load control device.It may be determined (e.g., by the mobile device) that each lightingfixture that adjusts in intensity in response to the command isconnected to the load control device.

At 2006, one or more discrepancies between actual connections betweentwo or more control devices and expected connections between thelighting fixtures and/or the control devices may be identified. Forexample, one or more expected connections may be missing, and/or one ormore actual connections that do not have corresponding expectedconnections may be present. The mobile device may determine the expectedconnections between the control devices based on a floor plan. The floorplan lighting control device may include one or more floor plan floorplan control devices (e.g., floor plan lighting fixtures, floor planlighting control devices, and/or floor plan lighting control devices),each of which may correspond to a control device in the given area. Thefloor plan may include floor plan data. The floor plan data may includeinformation about connections between two or more floor plan controldevices in the area. For example, the floor plan data may includeinformation that indicates that a first floor plan lighting fixture isconnected to a floor plan lighting control device and a floor plansecond lighting fixture. The floor plan data may include informationabout the function of each control device. For example, the floor plandata may indicate whether a given lighting fixture is used for accentlighting, ambient lighting, and/or the like. The floor plan data mayindicate whether a lighting fixture is dimmable, whether the lightingfixture is a low-end intensity (e.g., the lighting fixture is a 1%lighting fixture), the color-changing ability of the lighting fixture(e.g., full color adjustment and/or color temperature control), anycontrol devices (e.g., occupancy sensors, daylight sensors, remotecontrols, and/or the like) that are controlling the lighting fixture,and/or whether the lighting fixture is an emergency fixture (e.g.,whether the lighting fixture will remain on if power to the building islost). The floor plan data may indicate the type of communication linefor a connection (e.g., Ecosystem link, DALI link, 0-10V control, PWMcontrol), and/or whether the connection is a wired or wireless link.

For example, an area may include first, second, third, and fourthlighting fixtures and first and second remote control devices. Themobile device may determine (e.g., as described herein) that the first,second, and third lighting fixtures are connected (e.g., linked orassociated) to the first remote control device. The mobile device maydetermine that the fourth lighting fixture is connected (e.g., linked orassociated) to the second remote control device. Each lighting fixtureand remote control device may correspond to a floor plan lightingfixture or remote control device, respectively. The mobile device maydetermine that the actual connections (e.g., the connections between thelighting fixtures and the remote control device) do not correspond tothe expected connections (e.g., the connections between the floor planlighting fixtures and the floor plan remote control devices). Forexample, the mobile device may determine that the first and second floorplan lighting fixtures are connected to the first floor plan remotecontrol device. The mobile device may determine that the third andfourth floor plan lighting fixtures are connected to the second floorplan remote control device. The mobile device may therefore determinethat one expected connection (e.g., the connection between the thirdfloor plan lighting fixture and the second floor plan remote controldevice) is missing, and that there is an actual connection that is notpresent in the expected connections (e.g., the connection between thethird lighting fixture and the first remote control device isincorrect).

At 2008, the user may be alerted to the discrepancy between the actualconnections and the expected connections. The user may be alerted by themobile device, the system controller, a control device (e.g., a lightingcontrol device), a separate programming device, or some combinationthereof. For example, a lighting control device may cause acorresponding lighting fixture to blink in a pre-determined pattern toalert the user. The lighting control device and/or the system controllermay send a digital message to the mobile device. The mobile device may(e.g., upon receipt of the digital message) send a notification to theuser. The mobile device may send the notification to the user by, forexample, vibrating, flashing or blinking a light, displaying text on thescreen, playing a sound, and/or the like. The mobile device, systemcontroller, and/or the lighting control device may alert the user bysending a digital message to a separate programming device, which maythen send a notification to the user. For example, the system controllermay send an email to the user informing the user of the discrepancy. Thenotification may include, for example, the unique identifier of theimproperly-functioning control device, the expected connections and/oractual connections for the improperly-functioning control device, uniqueidentifiers of control devices to which the improperly-functioningcontrol device is connected, and/or unique identifiers of controldevices that the improperly-functioning control device is expected to beconnected to. The mobile device may prompt the user to acknowledge thealert. The method 2000 may end at 2012.

FIG. 16 depicts a representative image 2108 that may be displayed on amobile device to troubleshoot one or more control devices (e.g.,lighting fixtures, lighting control devices, and/or load controldevices) that are functioning improperly. The image 2108 may represent aframe of a video generated by the mobile device, for example. The image2108 may display one or more control devices within a location and/orinformation associated with the control devices. For example, the image2108 may display lighting fixture 304, outline 1010 identifying thelighting fixture 304, lighting control device 2104, remote controldevice 2105, floor plan identifier D2 identifying lighting fixture 304,and floor plan identifier S2 identifying lighting control device 2104.The image 2108 may display floor plan identifiers D1, D3-D9, S1, and/orS3. The mobile device may overlay an outline surrounding each controldevice and/or a floor plan identifier for each control device onto image2108. Outline 1010 may be overlaid onto lighting fixture 304 in theimage 2108 by the mobile device. Floor plan identifiers D2 and S2 may beoverlaid onto lighting fixture 304 and load control device 2104,respectively, in the image 2108 by the mobile device.

The mobile device may overlay one or more objects (e.g., lines, arrows,symbols, etc.) onto an image (e.g., the image 2108). The overlaidobjects may be “pinned” to the image such that the objects maintaintheir position relative to the control devices within the image as themobile device moves. The mobile device may determine to overlay theobjects onto the image based on the location/orientation of the mobiledevice and/or floor plan data accessible to the mobile device. The floorplan data may indicate information about one or more floor plan controldevices. For example, the floor plan data may indicate a location, floorplan identifier, unique identifier, function, type, and/or the like foreach floor plan control device.

The mobile device may determine its location and/or orientation asdescribed herein. The mobile device may be located within an area (e.g.,a room of a building). The mobile device may view the area, for exampleusing an internal camera of the mobile device, and may generate an imageof the area (e.g., the image 2108). The mobile device may identify thatone or more control devices are present within the image, for exampleusing an imaging analysis. The mobile device may determine anapproximate location (e.g., absolute or relative to the mobile device)of each control device in the image using one or more techniquesdescribed herein.

The mobile device may identify the control devices in the image based onthe floor plan data. For example, the floor plan data may include acorresponding floor plan control device for each control device presentin the area in which the mobile device is located. The floor plan datamay indicate a location (e.g., a relative location and/or an absolutelocation) for each floor plan control device. The mobile device mayidentify a control device based on the mobile device'slocation/orientation and/or the floor plan data. The mobile device maydetermine that a floor plan control device is indicated as being at alocation that is within a threshold distance of the location of a givencontrol device within the image. For example, the mobile device maydetermine that the floor plan control device indicated as being at thesame location as the given control device. The mobile device maydetermine that the given control device corresponds to the floor plancontrol device. After the mobile device has identified a control device,the mobile device may overlay information from the floor plan data(e.g., an outline and/or floor plan identifier) onto each control devicein the image.

The image 2108 may be displayed on the mobile device after lightingfixtures D1-D9 have been commissioned. The lighting fixtures D1-D9 maybe commissioned as described herein. The image 2108 may be displayed onthe mobile device after it has been determined that one or more of thecontrol devices is functioning improperly. A user of the mobile devicemay indicate that a control device is functioning improperly (e.g., byselecting the improperly-functioning control device on the display ofthe mobile device). The mobile device, another control device, a systemcontroller, and/or any other programming device may detect that thecontrol device is functioning improperly.

For example, a lighting fixture (e.g., a lighting control devicecontrolling one or more lighting fixtures) may fail to respond tocommands sent from a remote control device 2105 (e.g., via a systemcontroller). The remote control device 2105 may send a command (e.g.,based on input from the user) for the lighting fixture to decrease inintensity level by 10%. The mobile device and/or a sensor may determinethat the lighting fixture failed to respond to the command by viewingthe lighting fixture both before and after the command was sent, anddetermining that the intensity of the lighting fixture did not change.The lighting control device and/or the system controller may determinethat the lighting fixture failed to respond to the command if the dimmerswitch and/or system controller failed to receive a response to thecommand from the lighting fixture. The lighting control devices may eachcause the lighting fixtures that they are controlling to transmit theunique identifier of the load control device (e.g., via VLC). If themobile device sees a unique identifier from one of the lighting fixturesthat is not expected (e.g., a discrepancy with the floor plan data), themobile device may determine that one of the lighting fixtures is wiredto the wrong lighting control device.

The mobile device may alert the user of the improperly functioningcontrol device by, for example, vibrating, flashing or blinking a light,displaying text on a display screen, playing a sound, and/or the like.The mobile device may overlay a symbol 2106 onto theimproperly-functioning control device in the image 2108. Symbol 2106 mayindicate that the control device is functioning improperly.

The image 2108 may be displayed on the mobile device after actualconnections for each control device within the image 2108 have beendetermined (e.g., at 2104 of FIG. 15 ). The mobile device may receiveinformation about the actual connections from the user, the systemcontroller, and/or the control devices. For example, the mobile devicemay prompt the user to enter connections between the control devicesduring installation and/or commissioning of the control devices. Themobile device may receive one or more unique identifiers from each ofthe control devices, for example via VLC signals (e.g., LiFi) and/or byRF signals. For example, each control device may send its own uniqueidentifier to the mobile device in addition to unique identifiers foreach other control device that is connected to the control device.

The mobile device may overlay a representation for each actualconnection in the image 2108. For example, the image 2108 may displayone or more lines 2110, 2112, with each line representing a connectionbetween two control devices. For example, lines 2110 may representphysical wiring connection between the lighting control devices 2104 andthe lighting fixtures 304, and the lines 2112 may representcommunication and/or programming links (e.g., associations) between theremote control device 2105 and the lighting control devices 2104. Eachline 2112 may represent a wired and/or wireless connection or link(e.g., association). The mobile device may retrieve the connections fromlocal memory and/or from a remote server. The mobile device may overlaythe connections onto the image 2108 so that the user can see theconnections of the improperly-functioning control device as well asother control devices in the location. The overlaid connections may be“pinned” to the image 2108 such that the overlaid connections maintaintheir position relative to the control devices within the image 2108 asthe mobile device moves.

FIG. 17 depicts a representative image 2208 that may be displayed on amobile device to identify one or more discrepancies between actualconnections and expected connections for control devices (e.g., at 2006of the method 2000 of FIG. 15 ). The image 2208 may represent a frame ofa video generated by the mobile device, for example. The image 2208 maydisplay one or more control devices within a location and/or informationassociated with the control devices. For example, the image 2208 maydisplay lighting fixture 304, outline 1010 identifying the lightingfixture 304, lighting control device 2104, remote control device 2105,floor plan identifier D2 identifying lighting fixture 304, and/or floorplan identifier S2 identifying lighting control device 2104. The mobiledevice may overlay an outline surrounding each control device and/or afloor plan identifier for each control device onto image 2208. Outline1010 may be overlaid onto lighting fixture 304 in the image 2208 by themobile device. Floor plan identifiers D2 and S2 may be overlaid ontolighting fixture 304 and lighting control device 2104, respectively, inthe image 2208 by the mobile device.

The mobile device may overlay one or more objects (e.g., lines, arrows,symbols, etc.) onto an image (e.g., the image 2208). The overlaidobjects may be “pinned” to the image such that the objects maintaintheir position relative to the control devices within the image as themobile device moves. The mobile device may determine to overlay theobjects onto the image based on the location/orientation of the mobiledevice and/or floor plan data accessible to the mobile device. The floorplan data may indicate information about one or more floor plan controldevices. For example, the floor plan data may indicate a location, floorplan identifier, unique identifier, function, type, and/or the like foreach floor plan control device.

The mobile device may determine its location and/or orientation asdescribed herein. The mobile device may be located within an area (e.g.,a room of a building). The mobile device may view the area, for exampleusing an internal camera of the mobile device, and may generate an imageof the area (e.g., the image 2208). The mobile device may identify thatone or more control devices are present within the image, for exampleusing an imaging analysis. The mobile device may determine anapproximate location (e.g., absolute or relative to the mobile device)of each control device in the image using one or more techniquesdescribed herein.

The mobile device may identify the control devices in the image based onthe floor plan data. For example, the floor plan data may include acorresponding floor plan control device for each control device presentin the area in which the mobile device is located. The floor plan datamay indicate a location (e.g., a relative location and/or an absolutelocation) for each floor plan control device. The mobile device mayidentify a control device based on the mobile device'slocation/orientation and/or the floor plan data. The mobile device maydetermine that a floor plan control device is indicated as being at alocation that is within a threshold distance of the location of a givencontrol device within the image. For example, the mobile device maydetermine that the floor plan control device indicated as being at thesame location as the given control device. The mobile device maydetermine that the given control device corresponds to the floor plancontrol device. After the mobile device has identified a control device,the mobile device may overlay information from the floor plan data(e.g., an outline and/or floor plan identifier) onto each control devicein the image.

The mobile device may identify the discrepancies by comparing the actualconnections between the control devices to the expected connections forthe control devices. The mobile device may determine the expectedconnections for the control devices based on user input. For example,upon detecting that a control device is functioning improperly themobile device may prompt the user to enter (e.g., draw) expectedconnections between the control devices. The mobile device may determinethe expected connections for the control devices based on floor plandata accessible to the mobile device. For example, the floor plan datamay indicate one or more connections between floor plan control devicescorresponding to the control devices. The floor plan data may be storedon local memory and/or at a remote server. The floor plan data mayindicate the connections by including, for a given floor plan controldevice, a list of floor plan control devices to which the given floorplan control device is connected. For example, the floor plan data mayinclude information about each floor plan control device (e.g.,location, function, type, unique identifier, etc.) The information abouteach floor plan control device may include the unique identifiers ofother floor plan control devices to which the floor plan control deviceis connected. The floor plan data may include a list (e.g., a table) ofconnections (e.g., associations) between two or more floor plan controldevices.

The mobile device may determine that a discrepancy exists when anexpected connection is not present in the actual connections (e.g.,there is a missing connection), and/or when an actual connection existsthat is not present in the expected connections (e.g., there is an extraconnection). For example, as shown in FIG. 17 , the image 2208 mayinclude lighting fixture 2210 and lighting fixture 2212. Lightingfixture 2210 and lighting fixture 2212 may correspond to floor planlighting fixtures in the floor plan data having the floor planidentifiers D5 and D6, respectively. The mobile device may determinethat the lighting control device 2204 (e.g., which may correspond to afloor plan dimmer switch having the floor plan identifier S1) isconnected to the lighting fixture 2210 and the lighting control device2204 (e.g., which may correspond to a floor plan dimmer switch havingthe floor plan identifier S2) is connected to the lighting fixture 2212.The mobile device may determine that the floor plan lighting controldevice S1 is connected to both of the floor plan lighting fixtures D5,D6. The mobile device may also determine that the floor plan lightingcontrol device S1 is not connected to the floor plan lighting fixtureD6. The mobile device may therefore determine that two discrepanciesexist (e.g., the extra actual connection between the lighting controldevice S1 and the lighting fixture D6, and the missing actual connectionbetween the lighting control device S2 and the lighting fixture D6).

The image 2208 may include a representation of each actual connectionbetween the control devices. The mobile device may overlay a linerepresenting a connection for each actual connection onto the image2208. For example, as shown in FIG. 17 , mobile device may representeach actual connection as an overlaid line between two control devicesonto the image 2208. The mobile device may determine where to locateeach overlaid representation onto the image 2208. For example, themobile device may determine the borders and/or the center of eachcontrol device within the image 2208 based on an image analysis. Foreach control device in the image 2208, the mobile device may overlay anoutline (e.g., outline 1010) surrounding the control device. The mobiledevice may determine the relative locations of two connected controldevices based on the borders and/or centers of those control devices.The mobile device may determine the two points (e.g., one for eachcontrol device) where the distance between the borders of the connectedcontrol devices is shortest. The mobile device may overlay arepresentation of a connection between two control devices at the centerof a line connecting the two points on the borders of the controldevices, along a line connecting the two points on the borders, and/orat each of the two points on the borders. The mobile device may overlaya representation of a connection between at the center of a lineconnecting the two centers of the control devices, along a lineconnecting the two centers, and/or at each of the two centers. Anoverlaid line representing a connection between two control devices maybe straight or may have one or more angles/curves. For example, if athird control device is located between the two connected controldevices, the line may be located such that it goes around the thirdcontrol device. An overlaid line representing a connection between twocontrol devices may be angled such that it follows a wall, ceiling, orother physical feature of the location of the mobile device.

The image 2208 may indicate the discrepancies on the display of themobile device. The mobile device may indicate a discrepancy byoverlaying one or more symbols onto image 2208. The mobile device mayindicate a missing connection between two or more control devices byoverlaying a symbol 2220 (e.g., a warning symbol) or other indicator.For example, as shown in FIG. 17 , the mobile device may overlay thesymbol 2220 onto the missing connection between the lighting fixture2212 and the lighting control device 2104 (e.g., which may correspond toa floor plan dimmer switch having the floor plan identifier S2) in theimage 2208. The mobile device may indicate an extra connection betweentwo or more control devices by overlaying a symbol 2222 (e.g., an Xsymbol) or other indicator. For example, as shown in FIG. 17 , themobile device may overlay the symbol 2222 onto the extra connectionbetween the lighting fixture 2212 and the lighting control device 2104(e.g., which may correspond to a floor plan dimmer switch having thefloor plan identifier S1) in the image 2208. The symbols indicating anextra and/or missing connections may each be, for example, a no symbol,a letter (e.g., X), a number, a given color (e.g., red), and/or anyother symbol or indicator that indicates that there is an extra and/ormissing connection. The image 2208 may also indicate one or more actualconnections that correspond to correct expected connections. Forexample, as shown in FIG. 17 , the mobile device may overlay a symbol2224 (e.g., checkmark) or other indicator on or near each actualconnection displayed in the image 2208 that corresponds to an expectedconnection (e.g., each matching connection). For example, a symbolindicating a matching connection may be a checkmark, a letter, a number,a given color (e.g., green), and/or any other symbol or indicator thatindicates that the actual connection corresponds to a correct expectedconnection.

The mobile device may determine a location at which to overlay a symbolindicating an extra/missing connection or a symbol indicating a matchingconnection. The mobile device may determine a location to overlay arepresentation of an actual connection as described herein. The mobiledevice may determine to overlay a symbol at the center of a linerepresenting a connection between two control devices. The mobile devicemay overlay the symbol above, below, left of, and/or right of the line.For a missing connection between two control devices, the mobile devicemay determine the locations of the centers and/or borders of the twocontrol devices as described herein. The mobile device may overlay thesymbol indicating the missing connection at the center of a lineconnecting the two centers/borders.

FIG. 18 depicts a representative image 2308 that may be displayed on amobile device to alert a user to one or more discrepancies betweenactual connections and expected connections for control devices (e.g.,at 2008 of the method 2000 of FIG. 15 ). The image 2308 may represent aframe of a video generated by the mobile device, for example. The image2308 may display one or more control devices within a location and/orinformation associated with the control devices. For example, the image2308 may display lighting fixture 304, outline 1010 identifying thelighting fixture 304, lighting control device 2104, remote controldevice 2105, floor plan identifier D2 identifying lighting fixture 304,and floor plan identifier S2 identifying lighting control device 2104.Outline 1010 may be overlaid onto lighting fixture 304 in the image 2208by the mobile device. Floor plan identifiers D2 and S2 may be overlaidonto lighting fixture 304 and lighting control device 2104,respectively, in the image 2308 by the mobile device.

The mobile device may overlay one or more objects (e.g., lines, arrows,symbols, etc.) onto an image (e.g., the image 2308). The overlaidobjects may be “pinned” to the image such that the objects maintaintheir position relative to the control devices within the image as themobile device moves. The mobile device may determine to overlay theobjects onto the image based on the location/orientation of the mobiledevice and/or floor plan data accessible to the mobile device. The floorplan data may indicate information about one or more floor plan controldevices. For example, the floor plan data may indicate a location, floorplan identifier, unique identifier, function, type, and/or the like foreach floor plan control device.

The mobile device may determine its location and/or orientation asdescribed herein. The mobile device may be located within an area (e.g.,a room of a building). The mobile device may view the area, for exampleusing an internal camera of the mobile device, and may generate an imageof the area (e.g., the image 2308). The mobile device may identify thatone or more control devices are present within the image, for exampleusing an imaging analysis. The mobile device may determine anapproximate location (e.g., absolute or relative to the mobile device)of each control device in the image using one or more techniquesdescribed herein.

The mobile device may identify the control devices in the image based onthe floor plan data. For example, the floor plan data may include acorresponding floor plan control device for each control device presentin the area in which the mobile device is located. The floor plan datamay indicate a location (e.g., a relative location and/or an absolutelocation) for each floor plan control device. The mobile device mayidentify a control device based on the mobile device'slocation/orientation and/or the floor plan data. The mobile device maydetermine that a floor plan control device is indicated as being at alocation that is within a threshold distance of the location of a givencontrol device within the image. For example, the mobile device maydetermine that the floor plan control device indicated as being at thesame location as the given control device. The mobile device maydetermine that the given control device corresponds to the floor plancontrol device. After the mobile device has identified a control device,the mobile device may overlay information from the floor plan data(e.g., an outline and/or floor plan identifier) onto each control devicein the image.

The mobile device may alert the user by displaying a popup window 2310.The popup window 2310 may display information about the discrepanciesidentified by the mobile device. For example, as shown in FIG. 18 , thepopup window may display information about a missing connection,incorrect connection, and/or an extra connection. The popup window 2310may include a button 2312. When the button 2312 is actuated by the user,the mobile device may display more information about the discrepancies.The information may include, for example, the floor plan data, theexpected connections, the actual connections, instructions on how toresolve the discrepancy, and/or any other information regarding theactual and expected connections.

The image 2308 may include a representation of each extra connection,incorrect connection, and/or missing connection. Each extra connection,incorrect connection, and/or missing connection may be represented by,for example, a line between the identified devices between which thereis determined to be an extra connection, an incorrect connection, and/ora missing connection. A representation of an extra connection, anincorrect connection, and/or a missing connection may be different froma representation of a matching connection. For example, as shown in FIG.18 , each matching connection may be represented by a solid line betweentwo devices, while each an extra connection, an incorrect connection,and/or a missing connection may be represented by a dotted line betweentwo devices. Extra connections may be represented differently frommissing connections. For example, as shown in FIG. 18 , the missingconnection between lighting fixture 2210 and lighting fixture 2212 maybe represented as a dotted line, while the extra connection betweenlighting fixture 2212 and dimmer switch 2104 may be represented as adotted line with an X.

The mobile device may determine a location at which to overlay a symbolindicating an extra/missing connection or a symbol indicating a matchingconnection. The mobile device may determine a location to overlay arepresentation of an actual connection as described herein. For example,each actual connection between two control devices may be represented asa line between the control devices. The mobile device may representextra/missing connections differently from matching connections. Forexample, the mobile device may modify the line representing an extraconnection such that the line is dotted (e.g., instead of solid). Themobile device may overlay a symbol (e.g., an X as shown in FIG. 18 )onto the representation of the extra connection. The mobile device maydetermine a location to overlay the symbol as described herein. Themobile device may represent a missing connection as a dotted line. Themobile device may determine a location to overlay the dotted line asdescribed herein.

FIG. 19 is a flow diagram depicting an example method 2400 forcontrolling a control device via a mobile device. The method 2400 may beperformed after the control device has been installed and/orcommissioned. The method 2400 may be performed on a mobile device (e.g.,the mobile device 124 and/or the autonomous mobile devices 126, 128), ordistributed across multiple programming devices, such as a mobiledevice, a system controller, control devices, and/or other devices. Forexample, one or more portions of the method 2400 may be performed at asystem controller that may provide information and/or a user interfaceto the mobile device (e.g., via a browser or other application runningon the mobile device) and/or a control device for enabling control of anelectrical load.

The method 2400 may be performed when a user of the mobile devicedetermines to control one or more control devices within a given area.The area may be, for example, a room of a building. A control device maybe, for example, a lighting fixture, a dimmer switch, an electronicswitch, an electronic lighting control device for lamps, an LED driverfor LED light sources or other lighting control device, an AC plug-inload control device, a temperature control device (e.g., a thermostat),a motor drive unit for a motorized window treatment, or another controldevice. The method 2400 may be performed simultaneously for multiplecontrol devices or in sequential order. For example, the user maycontrol the intensity of multiple lighting fixtures at the same time.

The method 2400 may begin at 2402. At 2404, the mobile device mayidentify one or more control devices within view of the mobile device.For example, the mobile device may have an internal camera, and mayidentify each device within view of the internal camera. The mobiledevice may display an image including the control devices on a displayof the mobile device. The mobile device may identify the control devicesbased on input from the user. The mobile device may prompt the user toenter a location and/or establish an orientation of the mobile device,as described herein.

The mobile device may have access to a floor plan that includes floorplan data. The floor plan data may include information regarding thelocation of each control device. The mobile device may use the floorplan data to identify the control devices in the area. The floor plandata may include information about one or more floor plan controldevices, each corresponding to a control device in the area in which themobile device is located. For example, the floor plan data may include alocation, function, unique identifier, floor plan identifier, or typefor each floor plan control device. The floor plan data may indicateconnections between two or more floor plan control devices. The mobiledevice may determine its location and orientation and determine whichcontrol devices are at the determined location using the floor plandata. The mobile device may identify the control devices in view of themobile device based on the mobile device's orientation as describedherein.

The mobile device may identify the control devices automatically (e.g.,without input from the user). The mobile device may identify the controldevices by determining a location and orientation of the mobile device(e.g., as described herein). For example, the mobile device maydetermine the location of the mobile device using a real-time locatingsystem executed on the mobile device (e.g., GPS, triangulation, NFC,geolocation, etc.). The mobile device may determine the orientation ofthe mobile device using one or more of an internal compass, gyroscope,accelerometer, and/or any other sensor for detecting orientation on amobile device. The mobile device may receive a unique identifier fromeach control device within the area (e.g., as described herein). Forexample, the unique identifiers may be communicated via RF signalsand/or via VLC signals (e.g., LiFi). The RF signals may be, for example,a WI-FI® signal, a BLUETOOTH® signal, a near field communication (NFC)signal, a ZIGBEE® signal, a CLEAR CONNECT™ signal, Thread, or another RFsignal. The mobile device may receive the unique identifiers from thecontrol devices and determine the unique identifiers based on thereceived signals. The mobile device may determine a floor planidentifier for each control device based on the unique identifiers andthe floor plan data. For example, the floor plan data may include, foreach control device, an association between a unique identifier and afloor plan identifier. The mobile device may overlay the floor planidentifiers onto the respective control devices on the display of themobile device. The mobile device may prompt the user to confirm that thedisplayed floor plan identifiers are correct.

At 2406, one or more of the identified control devices may be selectedto be controlled. An individual control device, multiple controldevices, a predetermined group of control devices, or each controldevice within the area may be selected. For example, in an areaincluding multiple lighting fixtures, one lighting fixture, a subset ofthe lighting fixtures, or each lighting fixture within the area may beselected. The predetermined groups may be determined based on, forexample, user input, type or function of a control device, location ofthe control device, and/or the like. For example, a first group mayinclude each motorized treatment in a room, and a second group maycontain each lighting fixture on the left side of the room. Anindication of the control devices selected for control may be overlaidover the image and/or video of the control devices, such that the usermay identify the selected devices. For example, the indicator may be acolor, symbol, or other identifier that is overlaid on, or adjacent to,the selected control device(s).

One or more control devices may be selected based on user input. Forexample, the mobile device may prompt the user to select one or morecontrol devices on the display of the mobile device. For example, theuser may select one or more of the lighting fixtures or zones oflighting fixtures indicated as being recognized on the display of themobile device (e.g., by the overlaid indicators identifying lightingfixtures. The mobile device may prompt a user to select one or morecommands being overlaid on the display of the mobile device, and mayselect the control devices based on the commands. For example, the usermay select an “Increase Intensity” command on the display of the mobiledevice, and the mobile device may select one or more lighting fixturesand/or motorized window treatments for control.

At 2408, the selected device may be controlled via the mobile device.The mobile device may prompt the user to select and/or enter a commandbased on the selected control device(s) by displaying commands and/orcontrols on the display. The mobile device may prompt the user to enterthe command via a slider, a switch, a text box, and/or the like. Themobile device may display a popup window or other information on thedisplay of the mobile device. The popup window may be overlaid over theimage and/or video of the room being displayed from the camera of themobile device. The user may enter a command into the popup window. Forexample, a temperature control device may be selected for controlling.The mobile device may display a popup window prompting the user to entera temperature in the popup window. If multiple control devices areselected for control, the mobile device may display a single popupwindow or multiple popup windows (e.g., one for each selected controldevice). If a single popup window is displayed, the mobile device mayprompt the user to enter a single command or multiple commands (e.g.,one for each selected control device). For example, the user may selectfour lighting fixtures for controlling. The mobile device may display asingle popup window and prompt the user to enter four commands (e.g.,one for each of the four lighting fixtures) or one command (e.g., foreach of the four lighting fixtures).

After the user has entered the command, the mobile device may send thecommand to the control device(s). The command may be sent as one or moredigital messages (e.g., as a series of digital messages). The commandmay include an action to be performed by the control device(s), theunique identifier(s) of the control device(s), and/or any otherinformation that may be used to control the control devices. The mobiledevice may send the command via, for example, an RF signal (e.g., aWI-FI® signal, a BLUETOOTH® signal, a near field communication (NFC)signal, a ZIGBEE® signal, a CLEAR CONNECT™ signal, or another RFsignal). The mobile device may send the command to the control device(s)directly and/or via a separate device (e.g., a system controller). Thecontrol device(s) may send a response message to the mobile device(e.g., via a system controller). The response message may include anacknowledgement and/or the status of the control device(s). The statusof the control device(s) may be overlaid on top of the images and/orvideo being displayed from the camera to indicate the current status ofthe control device(s) in view. The method 2400 may end at 2410.

FIG. 20 depicts a representative image 2508 of an example user interfacethat may be displayed on a mobile device to identify one or more controldevices and select a control device to be controlled. The image 2508 mayrepresent a frame of a video generated by the mobile device, forexample. The image 2508 may display one or more control devices within alocation and/or information associated with the control devices. Forexample, the image 2508 may display lighting fixture 304, outline 1010identifying the lighting fixture 304, motorized window treatment 2510,outline 2512 identifying the motorized window treatment 2510, floor planidentifier D2 identifying lighting fixture 304, and floor planidentifier W1 identifying motorized window treatment 2510. The mobiledevice may overlay an outline surrounding each control device and/or afloor plan identifier for each control device onto image 2508. Outlines1010 and 2512 may be overlaid onto lighting fixture 304 and motorizedwindow treatment 2510, respectively, in the image 2508 by the mobiledevice. Floor plan identifiers D2 and W1 may be overlaid onto lightingfixture 304, and motorized window treatment 2510, respectively, in theimage 2208 by the mobile device.

The image 2508 may be an image of an area in which the mobile device islocated. The mobile device may determine its location and/or orientationas described herein. The mobile device may identify the control devicesin the area by, for example, prompting the user to enter identifyinginformation, image analysis to recognize control devices similar toother images of predefined control devices, receiving unique identifiersfrom the control devices, and/or accessing floor plan data stored onlocal memory or at a remote server. For example, as shown in FIG. 20 ,the mobile device may identify lighting fixtures D1-D9 and motorizedwindow treatment W1. The lighting fixtures D1-D9 and motorized windowtreatment W1 may be automatically identified via imaging analysis. Themobile device may overlay an outline and/or a floor plan identifier foreach control device on the image 2508. The floor plan identifier may beoverlaid based on the location of the identified device being determinedto be at a similar location in a floor plan as is identified based onthe location of the mobile device and the distance of the controldevices from the location and/or orientation of the mobile device. Forexample, as shown in FIG. 20 , the mobile device may overlay outline1010 around lighting fixture 304, and may overlay floor plan identifierD2 onto lighting fixture 304. The mobile device may overlay an outlineand/or a floor plan identifier for a group of control devices (e.g.,that have a similar location, function, and/or type). For example, themobile device may overlay an outline (not shown) surrounding lightingfixtures D1, D2, and D3. The mobile device may prompt the user of themobile device to confirm that the overlaid outlines and/or floor planidentifiers are correct.

The mobile device may overlay one or more objects (e.g., lines, arrows,symbols, etc.) onto an image (e.g., the image 2508). The overlaidobjects may be “pinned” to the image such that the objects maintaintheir position relative to the control devices within the image as themobile device moves. The mobile device may determine to overlay theobjects onto the image based on the location/orientation of the mobiledevice and/or floor plan data accessible to the mobile device. The floorplan data may indicate information about one or more floor plan controldevices. For example, the floor plan data may indicate a location, floorplan identifier, unique identifier, function, type, and/or the like foreach floor plan control device.

The mobile device may determine its location and/or orientation asdescribed herein. The mobile device may be located within an area (e.g.,a room of a building). The mobile device may view the area, for exampleusing an internal camera of the mobile device, and may generate an imageof the area (e.g., the image 2508). The mobile device may identify thatone or more control devices are present within the image, for exampleusing an imaging analysis. The mobile device may determine anapproximate location (e.g., absolute or relative to the mobile device)of each control device in the image using one or more techniquesdescribed herein.

The mobile device may identify the control devices in the image based onthe floor plan data. For example, the floor plan data may include acorresponding floor plan control device for each control device presentin the area in which the mobile device is located. The floor plan datamay indicate a location (e.g., a relative location and/or an absolutelocation) for each floor plan control device. The mobile device mayidentify a control device based on the mobile device'slocation/orientation and/or the floor plan data. The mobile device maydetermine that a floor plan control device is indicated as being at alocation that is within a threshold distance of the location of a givencontrol device within the image. For example, the mobile device maydetermine that the floor plan control device indicated as being at thesame location as the given control device. The mobile device maydetermine that the given control device corresponds to the floor plancontrol device. After the mobile device has identified a control device,the mobile device may overlay information from the floor plan data(e.g., an outline and/or floor plan identifier) onto each control devicein the image.

The mobile device may prompt the user to select one or more of thecontrol devices for being controlled. For example, the mobile device maydisplay button 2502. The user may press button 2502 to select a controldevice. The user may select the control device by, for example, pressingon the control device (e.g., within an outline around the controldevice) in the image 2508. For example, the user may select the button2502, and then may select lighting fixture 304 by pressing in the areaformed by the outline 1010 on the mobile device's display. The user mayselect a group of control devices by pressing on multiple controldevices. The mobile device may prompt the user to confirm the selection.Once the user has selected a control device, the mobile device maychange the image 2508 to indicate that the control device has beenselected. For example, if the user selects the motorized windowtreatment 2510, the mobile device may fill in the area formed by outline2512 in a given color.

FIG. 21 depicts a representative image 2608 of an example user interfacethat may be displayed on a mobile device to control a lighting fixturevia the mobile device (e.g., at 2408 of the method 2400 of FIG. 19 ).The image 2608 may represent a frame of a video generated by the mobiledevice, for example. The image 2608 may display one or more controldevices within a location and/or information associated with the controldevices. For example, the image 2608 may display lighting fixture 304,outline 1010 identifying the lighting fixture 304, motorized windowtreatment 2510, outline 2512 identifying the motorized window treatment2510, floor plan identifier D2 identifying lighting fixture 304, andfloor plan identifier W1 identifying motorized window treatment 2510.The mobile device may overlay an outline surrounding each control deviceand/or a floor plan identifier for each control device onto image 2608.Outlines 1010 and 2512 may be overlaid onto lighting fixture 304 andmotorized window treatment 2510, respectively, in the image 2208 by themobile device. Floor plan identifiers D2 and W1 may be overlaid ontolighting fixture 304 and motorized window treatment 2510, respectively,in the image 2608 by the mobile device.

The mobile device may overlay one or more objects (e.g., lines, arrows,symbols, etc.) onto an image (e.g., the image 2608). The overlaidobjects may be “pinned” to the image such that the objects maintaintheir position relative to the control devices within the image as themobile device moves. The mobile device may determine to overlay theobjects onto the image based on the location/orientation of the mobiledevice and/or floor plan data accessible to the mobile device. The floorplan data may indicate information about one or more floor plan controldevices. For example, the floor plan data may indicate a location, floorplan identifier, unique identifier, function, type, and/or the like foreach floor plan control device.

The mobile device may determine its location and/or orientation asdescribed herein. The mobile device may be located within an area (e.g.,a room of a building). The mobile device may view the area, for exampleusing an internal camera of the mobile device, and may generate an imageof the area (e.g., the image 2608). The mobile device may identify thatone or more control devices are present within the image, for exampleusing an imaging analysis. The mobile device may determine anapproximate location (e.g., absolute or relative to the mobile device)of each control device in the image using one or more techniquesdescribed herein.

The mobile device may identify the control devices in the image based onthe floor plan data. For example, the floor plan data may include acorresponding floor plan control device for each control device presentin the area in which the mobile device is located. The floor plan datamay indicate a location (e.g., a relative location and/or an absolutelocation) for each floor plan control device. The mobile device mayidentify a control device based on the mobile device'slocation/orientation and/or the floor plan data. The mobile device maydetermine that a floor plan control device is indicated as being at alocation that is within a threshold distance of the location of a givencontrol device within the image. For example, the mobile device maydetermine that the floor plan control device indicated as being at thesame location as the given control device. The mobile device maydetermine that the given control device corresponds to the floor plancontrol device. After the mobile device has identified a control device,the mobile device may overlay information from the floor plan data(e.g., an outline and/or floor plan identifier) onto each control devicein the image.

The image 2608 may be displayed after the user has selected one or morecontrol devices for controlling. The mobile device may prompt the userto select one or more controls for the selected control devices. Thecontrols may be specific to the selected devices. For example, as shownin FIG. 21 , if the selected control device is a lighting fixture, theuser may select the intensity level of the lighting fixture for control.The mobile device may display information about the selected controldevices and/or the selected controls, for example in a popup window. Forexample, as shown in FIG. 21 , the image 2608 may include popup window2602 that overlays information about lighting fixture 304 on top of theimage and/or video. The popup window may remain in the same location onthe display of the mobile device as the mobile device is moved. Forexample, the popup window may move relative to the control devices inimage 2608. The popup window 2602 may include a value associated withthe selected control device and/or the selected control. For example, asshown in FIG. 21 , the popup window 2602 may display the currentintensity level for lighting fixture 304. The user may control theselected control device by entering information into the popup window2602, for example by entering text into a text box, positioning anindicator on a slider, selecting a button, and/or the like.

As shown in FIG. 21 , the popup window 2602 may include a slider control2604. The slider control 2604 may include a line and/or an indicator(e.g., a slider handle or knob) crossing the line. The indicator maycross the line at a position that is related to the value associatedwith the control device. For example, the position of the indicatoralong the length of the line of the slider control 2604 may representthe intensity of lighting fixture 304. For example, the indicator may bepositioned ¾ of the way along the length of the line of the slidercontrol 2604 to represent that the lighting fixture 304 is at anintensity level of 75%. The user may control the lighting fixture 304 byadjusting the position of the indicator along the length of the line ofthe slider control 2604. For example, if the user wishes to decrease theintensity of the lighting fixture 304 to 50%, the user may move theindicator to the middle of the line of the slider control 2604. Themobile device may determine a command based on the input from the userand may send the command to the control device (e.g., as one or moredigital messages). The mobile device may send the digital messagesdirectly to the control device and/or via a separate programming device(e.g., a system controller). The popup window 2602 may include a button2606 that, when pressed, removes the popup window 2602 from the display.The popup window 2602 may include a toggle button, an on button, an offbutton, a raise button, a lower button, and/or one or more presetbuttons.

FIG. 22 depicts a representative image 2708 of an example user interfacethat may be displayed on a mobile device to control a motorized windowtreatment via the mobile device (e.g., at 2408 of the method 2400 ofFIG. 19 ). The image 2708 may represent a frame of a video generated bythe mobile device, for example. The image 2708 may display one or morecontrol devices within a location and/or information associated with thecontrol devices. For example, the image 2708 may display lightingfixture 304, outline 1010 identifying the lighting fixture 304,motorized window treatment 2510, outline 2512 identifying the motorizedwindow treatment 2510, floor plan identifier D2 identifying lightingfixture 304, and floor plan identifier W1 identifying motorized windowtreatment 2510. The mobile device may overlay an outline surroundingeach control device and/or a floor plan identifier for each controldevice onto image 2208. Outlines 1010 and 2512 may be overlaid ontolighting fixture 304 and motorized window treatment 2510, respectively,in the image 2208 by the mobile device. Floor plan identifiers D2 and W1may be overlaid onto lighting fixture 304 and motorized window treatment2510, respectively, in the image 2208 by the mobile device.

The mobile device may overlay one or more objects (e.g., lines, arrows,symbols, etc.) onto an image (e.g., the image 2708). The overlaidobjects may be “pinned” to the image such that the objects maintaintheir position relative to the control devices within the image as themobile device moves. The mobile device may determine to overlay theobjects onto the image based on the location/orientation of the mobiledevice and/or floor plan data accessible to the mobile device. The floorplan data may indicate information about one or more floor plan controldevices. For example, the floor plan data may indicate a location, floorplan identifier, unique identifier, function, type, and/or the like foreach floor plan control device.

The mobile device may determine its location and/or orientation asdescribed herein. The mobile device may be located within an area (e.g.,a room of a building). The mobile device may view the area, for exampleusing an internal camera of the mobile device, and may generate an imageof the area (e.g., the image 2708). The mobile device may identify thatone or more control devices are present within the image, for exampleusing an imaging analysis. The mobile device may determine anapproximate location (e.g., absolute or relative to the mobile device)of each control device in the image using one or more techniquesdescribed herein.

The mobile device may identify the control devices in the image based onthe floor plan data. For example, the floor plan data may include acorresponding floor plan control device for each control device presentin the area in which the mobile device is located. The floor plan datamay indicate a location (e.g., a relative location and/or an absolutelocation) for each floor plan control device. The mobile device mayidentify a control device based on the mobile device'slocation/orientation and/or the floor plan data. The mobile device maydetermine that a floor plan control device is indicated as being at alocation that is within a threshold distance of the location of a givencontrol device within the image. For example, the mobile device maydetermine that the floor plan control device indicated as being at thesame location as the given control device. The mobile device maydetermine that the given control device corresponds to the floor plancontrol device. After the mobile device has identified a control device,the mobile device may overlay information from the floor plan data(e.g., an outline and/or floor plan identifier) onto each control devicein the image.

The image 2708 may be displayed after the user has selected one or morecontrol devices for controlling. The mobile device may prompt the userto select one or more controls for the selected control devices. Thecontrols may be specific to the selected devices. For example, as shownin FIG. 22 , if the selected control device is a motorized windowtreatment, the user may select the level (e.g., height) of the motorizedwindow treatment for control. The mobile device may display informationabout the selected control devices and/or the selected controls, forexample in a popup window. For example, as shown in FIG. 22 , the image2708 may include popup window 2702 that displays information aboutmotorized window treatment 2510. The popup window may remain in the samelocation on the display of the mobile device as the mobile device ismoved. For example, the popup window may move relative to the controldevices in image 2608. The popup window 2702 may include a valueassociated with the selected control device and/or the selected control.For example, as shown in FIG. 22 , the popup window 2702 may display thecurrent level for motorized window treatment 2510. The user may controlthe selected control device by entering information into the popupwindow 2702, for example by entering text into a text box, positioningan indicator on a slider, selecting a button, and/or the like.

For example, as shown in FIG. 22 , the popup window 2702 may include aslider control 2704. The slider control 2704 may include a line and anindicator (e.g., a slider handle or knob) crossing the line. Theindicator may cross the line at a position that is related to the valueassociated with the control device. For example, the position of theindicator along the length of the line of the slider control 2704 mayrepresent a position of a bottom edge (e.g., a bottom bar or hembar) ofa covering material of the motorized window treatment 2510. For example,the indicator may be positioned at the middle of the slider 2704 torepresent that the motorized window treatment 2510 is 50% of the waybetween a fully-open position and a fully-closed position. The user maycontrol the motorized window treatment 2510 by adjusting the position ofthe indicator along the length of the line of the slider control 2704.For example, if the user wishes to increase the position of themotorized window treatment 2510 to 100% (e.g., the fully-open position),the user may move the indicator to the right end of the line of theslider control 2704. The mobile device may determine a command based onthe input from the user and may send the command to the control device(e.g., as one or more digital messages). The mobile device may send thedigital messages directly to the control device and/or via a separateprogramming device (e.g., a system controller). The popup window 2702may include a button 2706 that, when pressed, removes the popup window2602 from the display. The popup window 2702 could also include a togglebutton, an on button, an off button, a raise button, a lower button,and/or one or more preset buttons.

FIG. 23 shows an example system architecture 1100 as described herein.The system architecture 1100 may include a mobile device 1102 (e.g., themobile device 124). The mobile device 1102 may be, for example, a cellphone, a laptop or tablet computer, or a wearable device (e.g., wearablecomputer glasses). The mobile device 1102 may be an autonomous mobiledevice (e.g., the ground-based autonomous mobile device 126 or theairborne autonomous mobile device 128) or attached to an autonomousmobile device, as described herein.

The mobile device 1102 may have an internal camera capable of capturingsignals on the VLC communication link 1105 from a lighting fixture 1104or other light source. The mobile device 1102 may include acommunication circuit (e.g., receiver, transceiver, etc.) capable ofreceiving communications via the RF communication link 1106.

The mobile device 1102 may receive information (e.g., a uniqueidentifier) from a lighting control device 1108 installed in a lightingfixture 1104 for controlling a lighting load. The information may becommunicated by VLC (e.g., LiFi) on the VLC communication link 1105and/or by RF on the RF communication link 1106 (e.g., WI-FI®,BLUETOOTH®, near field communication (NFC), ZIGBEE®, or CLEAR CONNECT™).The lighting control device 1108 may be installed in the lightingfixture 1104 and may control a lighting load to produce VLC signals onthe VLC communication link 1105 at a rate imperceivable to the humaneye. The lighting control device 1108 may include a communicationcircuit (e.g., transmitter, transceiver, etc.) that is capable ofcommunicating via the RF communication link 1106. The informationincluded on the VLC communication link 1105 or the RF communication link1106 may be unique to the lighting control device 1108.

The lighting control device 1108 may be connected to a system controller1110 (e.g., a hub). The lighting control device 1108 may be connected tothe system controller 1110 via a wired communication link (e.g.,Ethernet or other wired network communication link) and/or wirelesscommunication link 1109 (e.g., Bluetooth®, WI-FI®, WiMAX®, HSPA+, LTE,5G, or another wireless communication link). The lighting control device1108 may send information to and/or receive information from the systemcontroller 1110 via the wired and/or wireless communication link 1109.For example, the lighting control device 1108 may be programmed with aunique identifier, which is received from the system controller 1110,for sending and/or receiving digital messages. The association of theunique identifier with the floor plan identifier may also becommunicated from the system controller 110 to the lighting controldevice 1108 via the wired and/or wireless communication link 1109.

The system controller 1110 may communicate with the mobile device 1102via an RF communication link 1107. The RF communication link 1107 mayinclude communications using Bluetooth®, WI-FI®, WiMAX®, HSPA+, LTE, 5G,or another wireless communication signal. Though shown as a wirelesscommunication link, the RF communication link 1107 may be replaced witha wired communication link, such as Ethernet. The mobile device 1102 mayreceive floor plan data or other system information via the RFcommunication link 1107. The mobile device 1102 may send uniqueidentifiers and/or association information comprising an associationbetween unique identifiers and floor plan data via the RF communicationlink 1107. The mobile device 1102 may also, or alternatively,communicate directly with a network infrastructure or Internet servicesto send and/or receive information.

The system controller 1110 may be connected to network infrastructure1112, e.g. by a wired communication link (e.g., Ethernet or other wirednetwork communication link) and/or wireless communication link 1109(e.g., Bluetooth®, WI-FI®, WiMAX®, HSPA+, LTE, 5G, or another wirelesscommunication link). The network infrastructure 1112 may use internetservices 1114 for sending information to and/or receiving informationfrom remote computing devices.

The internet services 1114 may be used to communicate with a designsoftware client 1116. The design software client 1116 may be used toprogram and/or store the floor plan data. The system controller 1110 mayreceive information from and send information to the design softwareclient 1116 via the network infrastructure 1112 and/or the internetservices 1114. For example, the system controller 1110, or other devicesin the system, may access the floor plan data, or portions thereof, byrequest from the design software client.

FIG. 24 is a block diagram illustrating an example mobile device 1200 asdescribed herein. The mobile device 1200 may be the mobile device 124shown in FIG. 1 , for example. The mobile device 1200 may include acontrol circuit 1202 for controlling the functionality of the mobiledevice 1200. The control circuit 1202 may include one or more generalpurpose processors, special purpose processors, conventional processors,digital signal processors (DSPs), microprocessors, integrated circuits,a programmable logic device (PLD), application specific integratedcircuits (ASICs), or the like. The control circuit 1202 may performsignal coding, data processing, power control, input/output processing,or any other functionality that enables the mobile device 1200 toperform as described herein. The control circuit 1202 may storeinformation in and/or retrieve information from the memory 1204. Thememory 1204 may include a non-removable memory and/or a removablememory. The non-removable memory may include random-access memory (RAM),read-only memory (ROM), a hard disk, or any other type of non-removablememory storage. The removable memory may include a subscriber identitymodule (SIM) card, a memory stick, a memory card, or any other type ofremovable memory.

The mobile device 1200 may include a communications circuit 1208 fortransmitting and/or receiving information. The communications circuit1208 may perform wireless and/or wired communications. Thecommunications circuit 1208 may include an RF transceiver or othercircuit capable of performing wireless communications via an antenna.Communications circuit 1208 may be in communication with control circuit1202 for transmitting and/or receiving information.

The control circuit 1202 may also be in communication with a display1206 and/or a user interface 1214 for providing information to a user.The control circuit 1202, the display 1206, and/or the user interface1214 may generate GUIs for being displayed on the mobile device 1200.The display 1206 and/or the user interface 1214 and the control circuit1202 may be in two-way communication, as the display 1206 and/or theuser interface 1214 may include a touch screen module capable ofreceiving information from a user and providing such information to thecontrol circuit 1202. The mobile device may also include an actuator1212 (e.g., one or more buttons) that may be actuated by a user tocommunicate user selections to the control circuit 1202.

The mobile device 1200 may include one or more circuits or sensors thatmay be used to determine the location and/or the orientation of themobile device 1200. For example, the mobile device 1200 may include alocating circuit 1218 and/or an orientation circuit (e.g., anaccelerometer and/or a gyroscope) 1216 or another circuit from which theoutput may be used to determine the orientation of the mobile device1200. The locating circuit 1218 may be used to determine a location ofthe mobile device 1200. For example, the locating circuit 1218 may beconfigured to transmit and/or receive beacons (e.g., VLC or RF signals)that may be used by the mobile device 1200 and/or an external device(e.g., the system controller 112) to determine the location of themobile device. The orientation circuit 1216 may be used to determine anorientation of the mobile device 1200.

The mobile device 1200 may include one or more circuits that may be usedto capture images. For example, mobile device 1200 may include animage-capturing circuit 1220, such as a camera. The image-capturingcircuit 1220 may be used to capture images of a location in order todetermine, for example, a unique identifier transmitted by a lightfixture. The image-capturing circuit 1220 may also be used to determinethe location, position (e.g., within the location), and/or orientationof mobile device 1200.

Each of the modules within the mobile device 1200 may be powered by apower source 1210. The power source 1210 may include an AC power supplyor DC power supply, for example. The power source 1210 may generate asupply voltage V_(CC) for powering the modules within the mobile device1200.

FIG. 25 is a block diagram illustrating an example system controller1300 as described herein. The system controller may be a gateway systemcontroller, a target system controller, a remote system controller,and/or a combination thereof. The system controller 1300 may be thesystem controller 112 shown in FIG. 1 , for example. The systemcontroller 1300 may include a control circuit 1302 for controlling thefunctionality of the system controller 1300. The control circuit 1302may include one or more general purpose processors, special purposeprocessors, conventional processors, digital signal processors (DSPs),microprocessors, integrated circuits, a programmable logic device (PLD),application specific integrated circuits (ASICs), or the like. Thecontrol circuit 1302 may perform signal coding, data processing, powercontrol, input/output processing, or any other functionality thatenables the system controller 1300 to perform as described herein. Thecontrol circuit 1302 may store information in and/or retrieveinformation from the memory 1304. The memory 1304 may include anon-removable memory and/or a removable memory. The non-removable memorymay include random-access memory (RAM), read-only memory (ROM), a harddisk, or any other type of non-removable memory storage. The removablememory may include a subscriber identity module (SIM) card, a memorystick, a memory card, or any other type of removable memory.

The system controller 1300 may include a communications circuit 1 fortransmitting and/or receiving information. The communications circuit 1may perform wireless and/or wired communications. The system controller1300 may also, or alternatively, include a communications circuit 1308for transmitting and/or receiving information. The communicationscircuit 1 may perform wireless and/or wired communications.Communications circuits 1 and 1308 may be in communication with controlcircuit 1302. The communications circuits 1 and 1308 may include RFtransceivers or other communications modules capable of performingwireless communications via an antenna. The communications circuit 1 andcommunications circuit 1308 may be capable of performing communicationsvia the same communication channels or different communication channels.For example, the communications circuit 1 may be capable ofcommunicating (e.g., with a mobile device, over a network, etc.) via awireless communication channel (e.g., BLUETOOTH®, near fieldcommunication (NFC), WIFI®, WI-MAX®, cellular, etc.) and thecommunications circuit 1308 may be capable of communicating (e.g., withcontrol devices and/or other devices in the load control system) viaanother wireless communication channel (e.g., WI-FI® or a proprietarycommunication channel, such as CLEAR CONNECT™).

The control circuit 1302 may be in communication with an LED indicator1312 for providing indications to a user. The control circuit 1302 maybe in communication with an actuator 1314 (e.g., one or more buttons)that may be actuated by a user to communicate user selections to thecontrol circuit 1302. For example, the actuator 1314 may be actuated toput the control circuit 1302 in an association mode and/or communicateassociation messages from the system controller 1300.

Each of the modules within the system controller 1300 may be powered bya power source 1310. The power source 1310 may include an AC powersupply or DC power supply, for example. The power source 1310 maygenerate a supply voltage V_(CC) for powering the modules within thesystem controller 1300.

FIG. 26 is a block diagram illustrating an example control-targetdevice, e.g., a load control device 1400, as described herein. The loadcontrol device 1400 may be a dimmer switch, an electronic switch, anelectronic lighting control device for lamps, an LED driver for LEDlight sources or other lighting control device, an AC plug-in loadcontrol device, a temperature control device (e.g., a thermostat), amotor drive unit for a motorized window treatment, or other load controldevice. The load control device 1400 may include a communicationscircuit 1402. The communications circuit 1402 may include a receiver, anRF transceiver, or other communications module capable of performingwired and/or wireless communications via communications link 1410. Thecommunications circuit 1402 may be in communication with control circuit1404. The control circuit 1404 may include one or more general purposeprocessors, special purpose processors, conventional processors, digitalsignal processors (DSPs), microprocessors, integrated circuits, aprogrammable logic device (PLD), application specific integratedcircuits (ASICs), or the like. The control circuit 1404 may performsignal coding, data processing, power control, input/output processing,or any other functionality that enables the load control device 1400 toperform as described herein.

The control circuit 1404 may store information in and/or retrieveinformation from the memory 1406. For example, the memory 1406 maymaintain a registry of associated control devices and/or controlconfiguration instructions. The memory 1406 may include a non-removablememory and/or a removable memory. The load control circuit 1408 mayreceive instructions from the control circuit 1404 and may control anelectrical load 1416 based on the received instructions. The loadcontrol circuit 1408 may send status feedback to the control circuit1404 regarding the status of the electrical load 1416. The load controlcircuit 1408 may receive power via the hot connection 1412 and theneutral connection 1414 and may provide an amount of power to theelectrical load 1416. The electrical load 1416 may include any type ofelectrical load, such as a lighting load (e.g., LED, fluorescent lamp,etc.).

The control circuit 1404 may be in communication with an actuator 1418(e.g., one or more buttons) that may be actuated by a user tocommunicate user selections to the control circuit 1404. For example,the actuator 1418 may be actuated to put the control circuit 1404 in anassociation mode and/or communicate association messages from the loadcontrol device 1400.

FIG. 27 is a block diagram illustrating an example autonomous mobiledevice 1500 as described herein. The autonomous mobile device 1500 maybe the ground-based autonomous mobile device 126 or the airborneautonomous mobile device 128 shown in FIG. 1 , for example. Theautonomous mobile device 1500 may include a control circuit 1502 forcontrolling the functionality of the autonomous mobile device 1500. Thecontrol circuit 1502 may include one or more general purpose processors,special purpose processors, conventional processors, digital signalprocessors (DSPs), microprocessors, integrated circuits, a programmablelogic device (PLD), application specific integrated circuits (ASICs), orthe like. The control circuit 1502 may perform signal coding, dataprocessing, power control, input/output processing, or any otherfunctionality that enables the autonomous mobile device 1500 to performas described herein. The control circuit 1502 may store information inand/or retrieve information from the memory 1504. The memory 1504 mayinclude a non-removable memory and/or a removable memory. Thenon-removable memory may include random-access memory (RAM), read-onlymemory (ROM), a hard disk, or any other type of non-removable memorystorage. The removable memory may include a subscriber identity module(SIM) card, a memory stick, a memory card, or any other type ofremovable memory.

The autonomous mobile device 1500 may include a communications circuit1508 for transmitting and/or receiving information. The communicationscircuit 1508 may perform wireless and/or wired communications. Thecommunications circuit 1508 may include an RF transceiver or othercircuit capable of performing wireless communications via an antenna.Communications circuit 1508 may be in communication with control circuit1502 for transmitting and/or receiving information.

The control circuit 1502 may also be in communication with a userinterface 1512 for providing information to a user. The control circuit1502 and/or the user interface 1512 may generate GUIs for beingdisplayed on the autonomous mobile device 1500. The user interface 1512and the control circuit 1502 may be in two-way communication, as theuser interface 1512 may include a touch screen capable of receivinginformation from a user and providing such information to the controlcircuit 1502. The mobile device may also include an actuator (e.g., oneor more buttons) that may be actuated by a user to communicate userselections to the control circuit 1502.

The autonomous mobile device 1500 may include one or more circuits orsensors that may be used to determine the location and/or theorientation of the autonomous mobile device 1500. For example, theautonomous mobile device 1500 may include a locating circuit 1518 and/oran orientation circuit (e.g., an accelerometer and/or a gyroscope) 1516or another circuit from which the output may be used to determine theorientation of the autonomous mobile device 1500. The locating circuit1518 may be used to determine a location of the autonomous mobile device1500. For example, the locating circuit 1518 may be configured totransmit and/or receive beacons (e.g., VLC or RF signals) that may beused by the autonomous mobile device 1500 and/or an external device(e.g., the system controller 112) to determine the location of theautonomous mobile device. The orientation circuit 1516 may be used todetermine an orientation of the autonomous mobile device 1500.

The autonomous mobile device 1500 may include one or more circuits thatmay be used to capture images. For example, autonomous mobile device1500 may include an image-capturing circuit 1520, such as a camera. Theimage-capturing circuit 1520 may be used to capture images of a locationin order to determine, for example, a unique identifier transmitted by alight fixture. The image-capturing circuit 1520 may also be used todetermine the location, position (e.g., within the location), and/ororientation of autonomous mobile device 1500.

The autonomous mobile device 1500 may also comprise an infrared sensor1514. The infrared sensor 1514 may be used to detect a unique identifiertransmitted by a light fixture. The infrared sensor 1514 may also beused to detect the location of one or more light fixtures.

The autonomous mobile device 1500 may include an electric motor 1506.The electric motor 1506 may be any circuit that is used to drivetransportation of autonomous mobile device 1500. For example, theelectric motor 1506 may be used in conjunction with a wheel, apropeller, a pneumatic air circuit, a hydraulic circuit, a magneticlevitation circuit, and/or the like. The electric motor 1506 may be usedto change the physical location and/or the orientation of the autonomousmobile device 1500. For example, the electric motor 1506 may be used inconjunction with one or more wheels that may be used to transport theautonomous mobile device 1500 within a location. The electric motor 1506may be used to tilt and/or rotate the autonomous mobile device 1500, ora portion thereof, such that the image-capturing circuit 1520 or othersensor of the mobile device 1500 is facing a lighting fixture within thelocation.

Each of the circuits within the autonomous mobile device 1500 may bepowered by a power source 1510. The power source 1510 may include an ACpower supply or DC power supply, for example. The power source 1510 maygenerate a supply voltage V_(CC) for powering the circuits within theautonomous mobile device 1500.

FIG. 28 is a block diagram illustrating an example control-source device2800 as described herein. The control-source device 2800 may be aremote-control device, an occupancy sensor, or another control-sourcedevice. The control-source device 2800 may include a control circuit2802 for controlling the functionality of the control-source device2800. The control circuit 2802 may include one or more general purposeprocessors, special purpose processors, conventional processors, digitalsignal processors (DSPs), microprocessors, integrated circuits, aprogrammable logic device (PLD), application specific integratedcircuits (ASICs), or the like. The control circuit 2802 may performsignal coding, data processing, power control, input/output processing,or any other functionality that enables the control-source device 2800to perform as described herein.

The control circuit 2802 may store information in and/or retrieveinformation from the memory 2804. The memory 2804 may include anon-removable memory and/or a removable memory, as described herein.

The control-source device 2800 may include a communications circuit 2808for transmitting and/or receiving information. The communicationscircuit 2808 may transmit and/or receive information via wired and/orwireless communications. The communications circuit 2808 may include atransmitter, an RF transceiver, or other circuit capable of performingwired and/or wireless communications. The communications circuit 2808may be in communication with control circuit 2802 for transmittingand/or receiving information.

The control circuit 2802 may also be in communication with an inputcircuit 2806. The input circuit 2806 may include an actuator (e.g., oneor more buttons) or a sensor circuit (e.g., an occupancy sensor circuit)for receiving input that may be sent to a device for controlling anelectrical load. For example, the control-source device may receiveinput from the input circuit 2806 to put the control circuit 2802 in anassociation mode and/or communicate association messages from thecontrol-source device. The control circuit 2802 may receive informationfrom the input circuit 2806 (e.g., an indication that a button has beenactuated or sensed information). Each of the modules within thecontrol-source device 2800 may be powered by a power source 2810.

Although features, elements, and functions are described above inparticular combinations, a feature, element, or function is used aloneor in any combination with the other features, elements, or functions.Various presently unforeseen or unanticipated alternatives,modifications, variations, or improvements may be subsequently made thatare also intended to be encompassed by the following claims.

The methods described herein are implemented in a computer program,software, or firmware incorporated in a computer-readable medium forexecution by a computer or processor. Examples of computer-readablemedia include electronic signals (transmitted over wired or wirelessconnections) and computer-readable storage media. Examples ofcomputer-readable storage media include, but are not limited to, a readonly memory (ROM), a random-access memory (RAM), removable disks, andoptical media such as CD-ROM disks, and digital versatile disks (DVDs).

What is claimed is:
 1. A method of commissioning a lighting controlsystem via an autonomous mobile device, the method comprising:determining an area in which the autonomous mobile device is located;capturing an image using a camera of the autonomous mobile device,wherein the image includes a plurality of lighting fixtures in the area;determining, based on the image, a location and an orientation of theautonomous mobile device relative to the plurality of lighting fixtures;determining an order for commissioning the plurality of lightingfixtures in the image; and automatically commissioning the plurality oflighting fixtures based on the determined order, wherein automaticallycommissioning the plurality of lighting fixtures comprises automaticallyassociating respective unique identifiers of a plurality of lightingcontrol devices with respective floor plan identifiers of the lightingfixtures in accordance with the determined order, wherein each of theplurality of lighting control devices is associated with a respectiveone of the plurality of lighting fixtures, wherein each uniqueidentifier is configured to identify a respective lighting controldevice in messages transmitted to control a lighting load in therespective lighting fixture, and wherein each floor plan identifieridentifies a respective location of a lighting fixture on a floor planof the area.
 2. The method of claim 1, wherein automaticallycommissioning the plurality of lighting fixtures based on the determinedorder further comprises: determining a respective floor plan identifierfor each of the plurality of lighting fixtures based on the determinedorder; and receiving, in accordance with the determined order, therespective unique identifiers of the plurality of lighting controldevices.
 3. The method of claim 1, further comprising, prior tocapturing the image, moving the autonomous mobile device to the areawithout the use of input from a user.
 4. The method of claim 1, whereindetermining the area in which the autonomous mobile device is locatedfurther comprises automatically determining the area using a real-timelocating system.
 5. The method of claim 1, wherein determining theorientation of the autonomous mobile device further comprisesautomatically determining the orientation by identifying predefinedobjects within the image.
 6. The method of claim 5, wherein thepredefined objects within the image comprise at least one of the cornersof a room, lighting fixtures, or windows.
 7. The method of claim 1,wherein determining the orientation of the autonomous mobile devicefurther comprises determining the orientation based on at least twopredefined objects within an image.
 8. The method of claim 1, whereindetermining the orientation of the autonomous mobile device furthercomprises determining the orientation based on information from at leastone of an accelerometer or a gyroscope of the autonomous mobile device.9. The method of claim 1, wherein determining the floor plan datacomprises mapping a position of one or more objects within the arearelative to a predetermined point.
 10. The method of claim 1, whereindetermining the orientation of the autonomous mobile device furthercomprises determining the orientation by measuring a distance betweentwo or more predefined objects within an image of the location andidentifying the distance as corresponding to a distance in a floor planof the location.
 11. The method of claim 10, further comprising usingthe measured distance to identify a lighting fixture of the plurality oflighting fixtures as corresponding to a floor plan lighting fixture inthe floor plan.
 12. The method of claim 11, wherein associating theunique identifiers of the lighting control devices with the respectivefloor plan identifiers comprises storing associations between the uniqueidentifiers and the respective floor plan identifiers in a memory of theautonomous mobile device.
 13. The method of claim 2, wherein receivingthe respective unique identifiers further comprises receiving the uniqueidentifiers of the lighting control devices via visible lightcommunication (VLC) signals.
 14. The method of claim 2, whereinreceiving the respective unique identifiers further comprises receivingthe unique identifiers of the lighting control devices via RF signals.15. The method of claim 1, further comprising sending a digital messagethat comprises control instructions configured to control a firstlighting control device of the plurality of lighting control devices,and wherein the digital message comprises at least one of the uniqueidentifier of the first lighting control device or the floor planidentifier associated with the first lighting control device.
 16. Amethod of commissioning a lighting control system via an autonomousmobile device, the method comprising: receiving, from a remote device, acommand to move the autonomous mobile device to a position within anarea; capturing an image using a camera of the autonomous mobile device,wherein the image comprises a plurality of lighting fixtures within thearea; determining an order for commissioning the plurality of lightingfixtures in the image; and commissioning the plurality of lightingfixtures based on the determined order, wherein commissioning theplurality of lighting fixtures comprises associating unique identifiersof a plurality of lighting control devices with respective floor planidentifiers of the lighting fixtures in accordance with the determinedorder, wherein each of the plurality of lighting control devices isassociated with a respective one of the plurality of lighting fixtures,wherein each unique identifier is configured to identify a respectivelighting control device in messages transmitted to control an amount ofpower provided to respective lighting loads in the plurality of lightingfixtures, and wherein each floor plan identifiers identifies arespective position of one of the plurality of lighting fixturesrelative to other objects on a floor plan of the area.
 18. The method ofclaim 17, wherein commissioning the plurality of lighting fixtures basedon the determined order further comprises: receiving, in accordance withthe determined order, the respective unique identifiers of the pluralityof lighting control devices; determining, based on the image, respectivelocations of the plurality of lighting fixtures with respect to theautonomous mobile device; and determining the respective floor planidentifiers based on the position of the autonomous mobile device andthe respective locations of the plurality of lighting fixtures withrespect to the autonomous mobile device.
 19. The method of claim 18,wherein determining the respective floor plan identifiers comprisesselecting one or more floor plan identifiers from a predefined list. 20.The method of claim 18, wherein receiving the respective uniqueidentifiers further comprises receiving the unique identifiers of thelighting control devices via visible light communication (VLC) signals.21. The method of claim 18, wherein determining the respective floorplan identifiers comprises sending a request to the remote device toprompt a user to provide the floor plan identifiers.
 22. The method ofclaim 18, wherein receiving the respective unique identifiers furthercomprises receiving the unique identifiers of the lighting controldevices via RF signals.
 23. The method of claim 17, further comprisingsending a digital message comprising control instructions configured tocontrol a first lighting control device of the plurality of lightingcontrol devices, and wherein the digital message comprises at least oneof the unique identifier of the first lighting control device or thefloor plan identifier associated with the first lighting control device.24. An autonomous mobile device comprising: a camera; and a controlcircuit configured to: determine an area in which the autonomous mobiledevice is located; capture an image using the camera, wherein the imageincludes a plurality of lighting fixtures in the area; determine, basedon the image, a location and an orientation of the autonomous mobiledevice relative to the plurality of lighting fixtures; determine anorder for commissioning the plurality of lighting fixtures in the image;and automatically commission the plurality of lighting fixtures based onthe determined order, wherein the control circuit being configured toautomatically commission the plurality of lighting fixtures comprisesthe control circuit being configured to automatically associaterespective unique identifiers of a plurality of lighting control deviceswith respective floor plan identifiers of the lighting fixtures inaccordance with the determined order, wherein each of the plurality oflighting control devices is associated with a respective one of theplurality of lighting fixtures, wherein each unique identifier isconfigured to identify a respective lighting control device in messagestransmitted to control a lighting load in the respective lightingfixture, and wherein each floor plan identifier identifies a respectivelocation of a lighting fixture on a floor plan of the area. 25.Non-transitory computer readable media having instructions storedthereon that, when executed by a control circuit, cause the controlcircuit to: determine an area in which an autonomous mobile device islocated; capturing an image using a camera, wherein the image includes aplurality of lighting fixtures in the area; determine, based on theimage, a location and an orientation of the autonomous mobile devicerelative to the plurality of lighting fixtures; determine an order forcommissioning the plurality of lighting fixtures in the image; andautomatically commission the plurality of lighting fixtures based on thedetermined order, wherein the instructions causing the control circuitto automatically commission the plurality of lighting fixtures comprisesthe instructions causing the control circuit to automatically associaterespective unique identifiers of a plurality of lighting control deviceswith respective floor plan identifiers of the lighting fixtures inaccordance with the determined order, wherein each of the plurality oflighting control devices is associated with a respective one of theplurality of lighting fixtures, wherein each unique identifier isconfigured to identify a respective lighting control device in messagestransmitted to control a lighting load in the respective lightingfixture, and wherein each floor plan identifier identifies a respectivelocation of a lighting fixture on a floor plan of the area.